MVC3查看多个模型

时间:2012-11-21 15:17:18

标签: asp.net-mvc-3 visual-studio view model

我有一个视图模型。该视图包含一个@ Html.DropDownList,其值在模型中。如何让我的观点同时采用该模型的不同部分?

例如,我有

@model IEnumerable<projectname.mymodel>
@{
   ViewBag.Title = "my title"
 }
 <!--This should use a different model-->
 <p>@Html.DropDownList(m =>m.name), new set(Model.list, "value", "key"))

如果我有model1和model2(连接到数据库) - 所有存储在Model文件夹中;和像

这样的大模型类
public class MyViewModel {
   public model1 var1 { get; set; }
   public IEnumerable<projectname.Model.model2> var2 { get; set; }
}

我在我看来称这个模型:

  

@model ProjectName.Models.Models

如何引用model1或model2中的项?

1 个答案:

答案 0 :(得分:3)

只需将一个新类作为模型传递给您的视图,其中包含您需要的所有数据:

public class MyViewModel {
    public SelectList list { get; set; }
    public IEnumerable<projectname.mymodel> Items { get; set; }
}

另一种方法是传递Viewbag中的列表:

Viewbag.list = new SelectList() ...