@Html.Action:须要有对应的Action,而且Action方法有返回值。(注:处理完业务逻辑同时,也须要返回所需值)spa
@{Html.RenderAction}:须要有对应的Action,Action方法没有返回值。(注:只处理业务逻辑,不须要返回值)io
@Html.Partial:不须要有Action,直接取ViewName对应的页面内容,有返回值。(注:Patial的数据来自于调用的View)方法
@{Html.RenderPartial}:不须要有Action,直接获取ViewName对应的页面内容,没有返回值。(注:RenderPatial的数据来自于调用的View)数据
详细说明:
RenderPartial和RenderAction
二者的相同点
RenderPartial和RenderAction一般都被用来显示一个功能相对独立的“块”,好比说显示菜单或者导航条。 二者输出的结果都被做为调用的View的一部分显示。
二者的不一样点
1.RenderPatial的数据来自于调用的View,而RenderAction来自本身。
2.RenderAction会发起一个新的Request,而RenderPatial不会。