【发布时间】:2011-10-04 20:20:26
【问题描述】:
使用 ASP.NET MVC 3.0,我如何将多个数据模型从我的控制器传递到我的视图?我希望有一个优雅的解决方案...谢谢!
顺便说一句 - 我可以提供代码示例,但我认为这是通用的,不足以保证它
【问题讨论】:
标签: asp.net-mvc
使用 ASP.NET MVC 3.0,我如何将多个数据模型从我的控制器传递到我的视图?我希望有一个优雅的解决方案...谢谢!
顺便说一句 - 我可以提供代码示例,但我认为这是通用的,不足以保证它
【问题讨论】:
标签: asp.net-mvc
不幸的是,没有一种真正优雅的方式来做到这一点。我首选的方法是封装这两个对象并将其发送到视图。
public class City{
public Mall TheMall;
public School TheSchool;
}
然后您的视图将被强类型化为 City,您将使用 Model.TheMall.Property 和 Model.TheSchool.Property 来访问您需要的内容。
另一种方法是使用 ViewData 包。你可以做的是这样填充它:
ViewData["City"] = "Toronto"; //random string
ViewData["Mall"] = new TheMall(...);
return View(MyViewName);
然后在您看来,您将可以使用您在控制器中分配的键(在本例中为“City”、“Mall”)访问这些。
希望有帮助!
【讨论】: