概述
Html.Partial,Html.RenderPartial,Html.Action, Html.RenderAction 这几个都是ASP.NET MVC Razor中的部分视图引擎
Html.Partial 返回的是字符串(String)。而 Html.RenderPartial 会调用ASP.NET MVC内部的Write方法返回void,以下是两者的使用示例:
// Razor syntax
@Html.Partial("ViewName")
@{ Html.RenderPartial("ViewName"); }
// WebView syntax
<%: Html.Partial("ViewName") %>
<% Html.RenderPartial("ViewName"); %>
上以代码版在页面上的输出是完全相同的。
但是 Html.Partial可以存储由后端输出变量,而 Html.RenderPartial 不可以。 Html.RenderPartial 会在执行的时候,直接把输出写进Response流中。
以上原理同样适用于 Html.Action 和 Html.RenderAtion
如何使用
- 1.对于简单的没有任何逻辑的用户控件,推荐使用Html.Partial;
- 2.对于需要设置一些Model的用户控件,推荐使用Html.Action。当然,有Model数据也是可以使用Html.Partial方法的,可以看方法的重载。
- 3.使用Html.Action有个好处,就是可以根据不同的场景选择不同的用户控件。比如:
@Html.Action("UserInfoControl")
在对应的UserInfoControl这个Action中,在用户未登录的时候,可以retun PartialView(“LogOnUserControl”);
登录后,可以retun PartialView(“UserInfoControl”);
版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。
发表评论
登录用户才能发表评论, 请 登 录 或者 注册