asp.net mvcHtml.Partial or Html.Action

xiaoxiao2021-02-28  130

Html.Partial的适用情况

1.如果是静态文件最好用此方法 2.如果有ViewModel需要发送到主视图,可以用此方法 主视图中:

@model List<Menu> //此model为主视图的model @Html.Partial("_MenuHome",Model) //分布页面可以用此model形成动态分布页面 ps:这种分布页面视图无需在控制器中写出相对应的方法

在分布页面_MenuHome中:

@model List<Menu> //与主页面的Model类型一致即可 @if(){ //to do: }

Html.Action的适用情况 当需要从服务器拿额外的数据去填充此分布视图的时候,可以用此方法。 在控制器中可以写一个方法与此分布视图相对应:

public PartialViewResult _MenuHome() { List<Menu>=..... //to do return PartialView(model); //用法与其他视图无多大差异 }

在分布视图上:

@model List<Menu> //接收从PartialViewResult 返回的model @if(){ //to do: }

在主视图上只需要:

@Html.Action("_MenuHome")

总而言之:静态页面最好用Html.Partial,动态页面用Html.Action。 Html.RenderPartial() 和 Html.RenderAction() 只是换了个名字而已,与上述两个方法大同小异。 原文:https://stackoverflow.com/questions/11766554/mvc-html-partial-or-html-action

转载请注明原文地址: https://www.6miu.com/read-41238.html

最新回复(0)