一些与MVC2相关的混淆/查询

时间:2011-06-20 11:52:17

标签: asp.net-mvc entity-framework asp.net-mvc-2

我刚刚开始使用MVC 2,我有几个问题,可能你们可以帮助我清除我的困惑。

为什么mvc不允许在视图页面上继承多个模型。 例如,如果我在我的视图中继承了帐户模型,为什么我不能将关联的实体属性与该视图中的帐户模型相比,我们只允许使用该模型的属性,如<%: Model.FirstName :%>其中,名字是属性帐户模型。为什么我们无法使用<%:Model.account.aspnet_users.vehicle.make %>其中aspnet_users通过外键与帐户关联,反之亦然。 MVC 2只允许<%:Model.account.aspnet_users.vehicle %>因此我不能使用车辆的相关属性,在这种情况下是vehicle.make。我在想做<%: Html.TextboxFor(model => model.account.aspnet_users.vehicle.make %>之类的事情。

1 个答案:

答案 0 :(得分:1)

ASP.NET MVC不会限制导航到相关属性。如果您无法访问该属性,则意味着:

  • 未加载关系(它为null)并关闭延迟加载/上下文
  • 该关系实际上是一个集合,您必须使用Linq在集合中导航