asp.net mvc Html.Partial or Html.Action

22 篇文章 0 订阅

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值