zoukankan      html  css  js  c++  java
  • ASP.NET MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction差别

    使用方法:@Html.Action(action, controller)
    加载局部页面。
    例如在模板页中使用:@Html.Action("Contact", "Company")
    在CompanyController中有如下方法:
    public PartialViewResult Contact()

    {
       return PartialView();
    }

    对这四个的差别做一个总结,清理一下思路,便利今后应用:

    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");

    原出处 http://www.cnblogs.com/gxlinhai/p/4263178.html

  • 相关阅读:
    Java基础算法--排序
    Java基础之String类的细节问题
    Java数据结构四之——二叉树的前、中、后序遍历
    动态规划之----最长公共子序列(LCS)
    最长公共子串问题
    makefile学习笔记
    使用正则表达式,去除C++的注释
    gbk字库音序对照表
    Fsharp 类中的空字段
    使用FSharp 探索Dotnet图像处理功能2--均衡灰度
  • 原文地址:https://www.cnblogs.com/-lzx/p/5234550.html
Copyright © 2011-2022 走看看