@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變量