1

我有一个视图模型。此视图包含一个 @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

如何引用模型 1 或模型 2 中的项目?

4

1 回答 1

3

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

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

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

Viewbag.list = new SelectList() ...
于 2012-11-21T15:21:00.373 回答