首页 > 代码库 > Html.Partial,Html.RenderPartial Html.Action,Html.RenderAction区别

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

@Html.Partial,@Html.RenderPartial     

这两者的共同点都是在视图中去调用另外一个视图,区别是   Html.Partial 有返回值 ( MvcHtmlString ),使用的时候  可以用一个变量存储这个返回值,或者使用 @直接进行输出.

而Html.RenderPartial  的返回值是 Void ,他的内部会自动帮我们 Response输出内容,所以无法用变量进行存储, 使用的时候 需要 @{ Html.RenderPartial() ;} 来调用

 

@Html.Action,@Html.RenderAction区别

这两者的共同点都是在视图中去请求另外一个 action, 区别也上面一样,  Html.Action 有返回值 ( MvcHtmlString ),使用的时候  可以用一个变量存储这个返回值,或者使用 @直接进行输出.

而Html.RenderAction 的返回值是 Void ,他的内部会自动帮我们 Response输出内容,所以无法用变量进行存储, 使用的时候 需要 @{ Html.RenderPartial() ;} 来调用

image

image

 

至于,调用这几个方法的时候,视图里面走不走 ViewStart 是看你  Return View (走ViewStart 完整视图,如果ViewStart.cshtml中有指定Layout属性,那么还会执行这个Layout的页面)  还是 Return PartialView (不走 ViewStart,直接访问分部视图), 具体的也可以看看这里  http://www.cnblogs.com/joeylee/p/3869633.html