【发布时间】:2011-02-08 11:32:56
【问题描述】:
我有两个视图模型:
public class MasterPageViewModel
{
public string Meta { get; set; }
}
public class Entry : MasterPageViewModel
{
public int EntryID { get; set; }
public string Title { get; set; }
public DateTime PubDate { get; set; }
}
索引页面返回一个条目列表,因此在视图中包含:
...Inherits="System.Web.Mvc.ViewPage<IEnumerable<bl.Models.Entry>>"
然后母版页包含
...Inherits="System.Web.Mvc.ViewMasterPage<bl.Models.MasterPageViewModel>"
这是我得到的错误:
传入字典的模型项的类型为“System.Linq.EnumerableQuery`1[bl.Models.Entry]”,但此字典需要“bl.Models.MasterPageViewModel”类型的模型项。
我可以通过在母版页上使用 ViewData 字典轻松绕过该错误,但就我而言,我更喜欢强类型方法。将来我希望能够添加将出现在母版页上的类别和标签列表。
【问题讨论】:
标签: asp.net-mvc-2 view master-pages strong-typing