@Html.Partial,@Html.RenderPartial html
这二者的共同点都是在视图中去调用另一个视图,区别是 Html.Partial 有返回值 ( MvcHtmlString ),使用的时候 能够用一个变量存储这个返回值,或者使用 @直接进行输出.htm
而Html.RenderPartial 的返回值是 Void ,他的内部会自动帮咱们 Response输出内容,因此没法用变量进行存储, 使用的时候 须要 @{ Html.RenderPartial() ;} 来调用blog
@Html.Action,@Html.RenderAction区别get
这二者的共同点都是在视图中去请求另一个 action, 区别也上面同样, Html.Action 有返回值 ( MvcHtmlString ),使用的时候 能够用一个变量存储这个返回值,或者使用 @直接进行输出.it
而Html.RenderAction 的返回值是 Void ,他的内部会自动帮咱们 Response输出内容,因此没法用变量进行存储, 使用的时候 须要 @{ Html.RenderPartial() ;} 来调用io
至于,调用这几个方法的时候,视图里面走不走 ViewStart 是看你 Return View (走ViewStart 完整视图,若是ViewStart.cshtml中有指定Layout属性,那么还会执行这个Layout的页面) 仍是 Return PartialView (不走 ViewStart,直接访问分部视图), 具体的也能够看看这里 http://www.cnblogs.com/joeylee/p/3869633.html变量