• @Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别


    @Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别

    2013年06月21日 18:46:44 Jlins 阅读数 8759

    ASP.NET MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别

     对这四个的区别做一个总结,清理一下思路,方便以后使用:

    1、带有Render的方法返回值是void,在方法内部进行输出;不带的返回值类型为MvcHtmlString,所以只能这样使用:
        @Html.Partial 对应 @{Html.RenderPartial(....);}
        @Html.Action 对应 @{Html.RenderAction(....);}

    2、Action、RenderAction加载方法的视图,执行Controller → Model → View的顺序,然后把产生的页面带回到原来的View中再回传。而Partial、RenderPartial直接加载视图文件内容

    3.  Html.Partial可以直接提供用户控件名作为参数,而Html.Action需要有对应的Action,在Action内部返回PartailResult(即retun PartialView())。

    4、对于简单的没有任何逻辑的用户控件,推荐使用Html.Partial;对于需要设置一些Model的用户控件,推荐使用Html.Action。当然,有Model数据也是可以使用Html.Partial方法的,可以看方法的重载。

    5、使用Html.Action有个好处,就是可以根据不同的场景选择不同的用户控件。比如:
    @Html.Action("UserInfoControl")
    在对应的UserInfoControl这个Action中,在用户未登录的时候,可以retun PartialView("LogOnUserControl");登录后,可以retun PartialView("UserInfoControl");

  • 相关阅读:
    python学习:字符编码与转码
    python学习:文件操作
    python学习:基本运算符
    python学习:列表、元组、字典、集合
    python学习:基础知识
    linux常用命令
    hadoop手动安全模式
    System.getProperty("user.dir")的理解
    如何获取SpringBoot项目的applicationContext对象
    spring无法注入bean
  • 原文地址:https://www.cnblogs.com/grj001/p/12224727.html
Copyright © 2020-2023  润新知