zoukankan      html  css  js  c++  java
  • MVC Html.RenderPartial和Html.partial

    ①Html.Partial是HtmlHelper的扩展方法,而Html.RenderPartial是HtmlHelper自带方法,两者功能相近。但

    ②Htm.Partial是将视图内容直接生成一个字符串并返回(相当于有个转义的过程)。

    Html.RenderPartial方法是直接输出至当前 HttpContext(因为是直接输出,所以性能好)。

    ③Html.partial和RenderPartial的其它三个重载很有用,第二个重载@{Html.RenderPartial("BasicChart",model);}   用这个重载可以在部分视图里使用强类型,然后在主视图中使用第二个参数传model过去,而不用controller 比如从list中传其中一项myClass过去 第三个重载用来传ViewData同理,如:@{Html.RenderPartial("BasicChart",ViewData["myData"]);}

    补充:

    1、带有Render的方法返回值是void,在方法内部进行输出;不带的返回值类型为MvcHtmlString,所以只能这样使用: @Html.Partial 对应 @{Html.RenderPartial(....);} @Html.Action 对应 @{Html.RenderAction(....);} 2、Html.Partial可以直接提供用户控件名作为参数,而Html.Action需要有对应的Action,在Action内部返回PartailResult(即retun PartialView())。 3、对于简单的没有任何逻辑的用户控件,推荐使用Html.Partial;对于需要设置一些Model的用户控件,推荐使用Html.Action。当然,有Model数据也是可以使用Html.Partial方法的,可以看方法的重载。 4、使用Html.Action有个好处,就是可以根据不同的场景选择不同的用户控件。 比如: @Html.Action("UserInfoControl") 在对应的UserInfoControl这个Action中,在用户未登录的时候,可以retun PartialView("LogOnUserControl");登录后,可以retun PartialView("UserInfoControl");

  • 相关阅读:
    移动端rem布局
    父子组件通信
    拦截器
    Vue路由教程
    使用var和let的区别
    数组去重的几种方法
    利用位运算进行权限控制
    线程基础
    关于get请求的乱码问题
    nuxt.js Navigating to current location ("/xxx") is not allowed
  • 原文地址:https://www.cnblogs.com/zcm123/p/3123328.html
Copyright © 2011-2022 走看看