Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法

刚才开使用MVC的PartialView时,对怎么显示有了分不清

Html.Partial

1.不要使用Controller,由于没有Controller,View只能在相同目录或Shared目录中,要不无法调用

2.有返回值MvcHtmlString,所以可以把返回值保存在变量中

主要适用于: 没有model数据,或model数据由调用时给定的情况,其实很像一个格式化辅助方法,你把数据给他,他返回你格式化的数据

Html.ReaderPartial

1.与Html.Partial一样,不要使用Controller

2.没有返回值,他是直接把PartialView的数据写与当前Page对象的TextWriter中,所以可能使用当前页Controller的model数据

主要适用于:数据model在每个使用他的Page的Controller中

Html.Action

1.与Html.Partial一样,返回MvcHtmlString对象,可以保存在变量中

2.但必须有Controller,这样PartialView不一定要在同级或Shared中,可以在Controller的方法上加上ChildActionOnly标签,防止直接浏览页面

Html.ReaderAction

1.与Html.ReaderPartial一样,是没有返回值,直接把数据写入当前页的TextWriter中

2..必须有Controller,这样PartialView不一定要在同级或Shared中,可以在Controller的方法上加上ChildActionOnly标签,防止直接浏览页面

原文地址:https://www.cnblogs.com/ljx2012/p/4048396.html