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