如何在强类型视图中包含多个模型对象?

时间:2013-07-12 18:18:26

标签: asp.net-mvc object

当我从ActionResult函数创建强类型视图时,用于创建视图的Visual Studio对话框只允许我包含一个模型对象。

如何包含1个以上,以便我可以为所有人使用智能?

1 个答案:

答案 0 :(得分:7)

这是不可能的。您应该创建另一个模型来包装这两个模型。

示例:

//Model

public class FooModel1
{
   public string Property {get;set;}
}

public class FooModel2
{
   public string Property {get;set;}    
}

public class FooModel
{
  public FooModel1 One {get;set;}
  public FooModel2 Two {get;set;}
}

//控制器:

public ActionResult Index()
{
   var model = new FooModel() { One = new FooModel1 (), Two = new FooModel2 ()};
   return View(model);
}

//视图

@model FooModel
@Html.TextBoxFor(m=>m.One.Property)
@Html.TextBoxFor(m=>m.Two.Property)