我知道如何通过返回View({mylist})返回控制器中的单个集合(列表<>);然后在视图页面内用剃刀语法@Model等引用它。就我而言,我有几个不同的集合,我想单独在页面上使用。我明白我可以制作“所有集合的集合之母”,只需将集合包含在另一个集合中(并返回那个集合),但我想知道MVC4中是否有某种方式可以让我更优雅地处理这种情况。返回多个集合以用于MVC4 asp.net查看页面
谢谢,新年快乐!
我知道如何通过返回View({mylist})返回控制器中的单个集合(列表<>);然后在视图页面内用剃刀语法@Model等引用它。就我而言,我有几个不同的集合,我想单独在页面上使用。我明白我可以制作“所有集合的集合之母”,只需将集合包含在另一个集合中(并返回那个集合),但我想知道MVC4中是否有某种方式可以让我更优雅地处理这种情况。返回多个集合以用于MVC4 asp.net查看页面
谢谢,新年快乐!
您应该创建一个视图模型。这是一个普通的课程,可以容纳你视图中需要的所有集合或属性。
查看帖子:http://msdn.microsoft.com/en-us/vs2010trainingcourse_aspnetmvc3fundamentals_topic7.aspx
您可以使用ViewBag
在控制器每收集和使用这些ViewBag
变量查看
在控制器
public ActionResult HotelDetails(List<HotelDetailsModel> model)
{
ViewBag.HotelDetails = model;
return View();
}
,并查看
@{
List<HotelDetailsModel> hotels = (List<HotelDetailsModel>)ViewBag.SearchResultsModel;
if (hotels.Count > 0)
{
foreach (HotelDetailsModel item in hotels)
{
}
}
}
改用viewmodel?第一次谷歌命中:http://msdn.microsoft.com/en-us/vs2010trainingcourse_aspnetmvc3fundamentals_topic7.aspx –
谢谢。看起来像一个ViewModel只是一个集合(或其他东西)的集合。这对我行得通。 –