【发布时间】:2012-10-18 02:17:20
【问题描述】:
在谷歌上搜索了一段时间后,我对如何在 asp mvc 3 中执行此操作有点困惑。
因此,任务是为多个控制器的视图创建一个通用布局(或母版?)页面。所有的视图本身都是强类型的……这个布局页面实际上可视化了一些强类型的对象。所以,我需要将此对象传递给布局页面,以将其传递给 `Html.RenderPartial()' 或直接在页面中呈现。
文章Passing Data to View Master Pages (C#)(虽然是mvc2 的旧文章)给出了一个提供基本抽象控制器类的示例,将模型传递给ViewData。这可能是治疗方法。
但是……
在一些线程中,我找到了一种可以制作强类型母版页的方法:
<%@ Master ... Inherits="System.Web.Mvc.ViewMasterPage<MyWeb.Models.Client>" %>
那么,在 mvc3 中是否有相同的方法?或者向布局页面传递数据的唯一方法是使用 ViewBag 或 ViewData?
看了what is the best way to bind ViewModel data to master page in asp.net-mvc,考虑了Darin的回答,但还是觉得这一堆view的布局是一样的,看不出有什么违背DRY原则的理由。
那么,如何将强类型对象传递给布局页面?还是我搞混了什么?
【问题讨论】:
标签: c# asp.net-mvc-3 master-pages