[英]How to use multiple models in MVC3 asp
如果我有一个MVC3 ASP.net页面,其中包含模型“ iEnumerable<mymodel.CarsForHire>
”(直接链接到实体框架模型),并且现在我还想包括MVC3生成的默认用户管理模型,如何我一次使用两个模型吗?
我假设我必须传递一个集合,或者创建一个名为“ blah
”的模型,该模型具有一个字段“ carsforHire”,该字段与iEnumerable<mymodel.CarsForHire>
结婚,但是不确定从哪里开始。
任何想法将不胜感激
您已经提到了解决方案; 创建一个包含所有必需数据的视图模型类。 例如:
public class SomeViewModel
{
public User CurrentUser { get; set; }
public IEnumerable<mymodel.CarsForHire> Cars { get; set; }
}
在控制器中构造该模型,并将其传递给您的视图。 并且不要忘记在视图顶部更新类型声明。
我通常要做的是创建一个ViewModel类。 例如:
public class CarsViewModel
{
public IEnumerable<mymodel.CarsForHire> CarsForHire { get; set; }
public UserModel User { get; set; }
}
然后使用CarsViewModel
而不是IEnumerable<mymodel.CarsForHire>
创建视图
如果需要,可以使用EF的导航属性。
即
public class carForHire()
{
int property1{get; set;}
.
.
.
//Navigationla property
public virtual blah blah { get; set; }
}
在您的页面/视图中,您可以像
@foreach(var item in Mode)
{
item.blah.blahProperty
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.