2

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

我如何包含超过 1 个,以便我可以对所有这些都使用智能感知?

4

1 回答 1

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)
于 2013-07-12T18:31:37.040 回答