C# 如何在MVC3 asp中使用多个模型
如果我有一个MVC3 ASP.net页面,其中包含一个模型“C# 如何在MVC3 asp中使用多个模型,c#,asp.net-mvc,asp.net-mvc-3,razor,C#,Asp.net Mvc,Asp.net Mvc 3,Razor,如果我有一个MVC3 ASP.net页面,其中包含一个模型“iEnumerable”——该模型直接链接到实体框架模型——现在我还想包括MVC3生成的默认用户管理模型,那么我如何同时使用这两个模型 我假设我必须传入一个集合,或者创建一个名为“blah”的模型,该模型有一个字段“carsforHire”,该字段最多与iEnumerable结合,但不确定从何处开始 如果您有任何想法,我们将不胜感激。如果您愿意,您可以使用EF的导航属性。即 public class carForHire() { in
iEnumerable
”——该模型直接链接到实体框架模型——现在我还想包括MVC3生成的默认用户管理模型,那么我如何同时使用这两个模型
我假设我必须传入一个集合,或者创建一个名为“blah
”的模型,该模型有一个字段“carsforHire”,该字段最多与iEnumerable
结合,但不确定从何处开始
如果您有任何想法,我们将不胜感激。如果您愿意,您可以使用EF的导航属性。
即
public class carForHire()
{
int property1{get; set;}
.
.
.
//Navigationla property
public virtual blah blah { get; set; }
}
在您的页面/视图中,您可以像
如果愿意,您可以使用EF的导航属性。
即
public class carForHire()
{
int property1{get; set;}
.
.
.
//Navigationla property
public virtual blah blah { get; set; }
}
在您的页面/视图中,您可以像
你已经提到了解决方案;创建包含所有必需数据的视图模型类。例如:
public class SomeViewModel
{
public User CurrentUser { get; set; }
public IEnumerable<mymodel.CarsForHire> Cars { get; set; }
}
public class CarsViewModel
{
public IEnumerable<mymodel.CarsForHire> CarsForHire { get; set; }
public UserModel User { get; set; }
}
公共类SomeViewModel
{
公共用户CurrentUser{get;set;}
公共IEnumerable汽车{get;set;}
}
在控制器中构造该模型并将其传递给视图。不要忘记更新视图顶部的类型声明。您已经提到了解决方案;创建包含所有必需数据的视图模型类。例如:
public class SomeViewModel
{
public User CurrentUser { get; set; }
public IEnumerable<mymodel.CarsForHire> Cars { get; set; }
}
public class CarsViewModel
{
public IEnumerable<mymodel.CarsForHire> CarsForHire { get; set; }
public UserModel User { get; set; }
}
公共类SomeViewModel
{
公共用户CurrentUser{get;set;}
公共IEnumerable汽车{get;set;}
}
在控制器中构造该模型并将其传递给视图。不要忘记更新视图顶部的类型声明。我通常做的是创建一个ViewModel类。例如:
public class SomeViewModel
{
public User CurrentUser { get; set; }
public IEnumerable<mymodel.CarsForHire> Cars { get; set; }
}
public class CarsViewModel
{
public IEnumerable<mymodel.CarsForHire> CarsForHire { get; set; }
public UserModel User { get; set; }
}
公共类CarsViewModel
{
公共IEnumerable CarsForHire{get;set;}
公共用户模型用户{get;set;}
}
然后用
CarsViewModel
而不是IEnumerable
创建视图我通常做的是创建一个ViewModel类。例如:
public class SomeViewModel
{
public User CurrentUser { get; set; }
public IEnumerable<mymodel.CarsForHire> Cars { get; set; }
}
public class CarsViewModel
{
public IEnumerable<mymodel.CarsForHire> CarsForHire { get; set; }
public UserModel User { get; set; }
}
公共类CarsViewModel
{
公共IEnumerable CarsForHire{get;set;}
公共用户模型用户{get;set;}
}
然后用
CarsViewModel
创建视图,而不是IEnumerable
啊,太棒了-我想那样会更难。啊,太棒了-我想那样会更难。