我有3个型号。 1个模型用于搜索框休息2我用于显示复选框列表。
对于搜索框我不想要Ienumerable类型模型但是对于复选框我想要Ienumerable类型模型
数据来自不同的控制器 我怎样才能在一个视图中执行此操作?
请举一些例子。
答案 0 :(得分:1)
设置ViewModel
然后在设置属性后发送ViewModel
进行查看;
public class MyModel1 {}
public class MyModel2 {}
public class ViewModel
{
public MyModel1 MyModel1 {get; set;}
public MyModel2 MyModel2 {get; set;}
}
然后在设置view
后的@model ViewModel
中
您可以使用任何您想要的子模型,如@Model.MyModel1
等
答案 1 :(得分:0)
如果要在视图中使用3个模型,则必须声明一个“Bag”视图模型,其中包含要使用的所有子模型。
首先,如果你必须创建你的子模型,如果你没有,那么你将它们包含在行李视图模型中。
public class FirstViewModel
{
public int MyProperty { get; set; }
}
public class SecondViewModel
{
public string MySecondProperty { get; set; }
}
public class ThirdViewModel
{
public DateTime MyThirdProperty { get; set; }
}
public class BagViewModel
{
public FirstViewModel FirstModel { get; set; }
public SecondViewModel SecondModel { get; set; }
public ThirdViewModel ThirdModel{ get; set; }
}
子模型可以是视图模型,也可以是绑定模型。
在你的剃刀视图中,你包含了BagViewModel:
@model BagViewModel
然后,如果您想使用 FirstViewModel (例如),请执行以下操作:
@Model.FirstViewModel