我理解如何使用ASP.NET MVC中的页面继承处理单个数据结构上的foreach循环,但我想在同一页面上显示两种不同类型数据的内容。如何才能完成这个,因为页面只接受一个继承类?
答案 0 :(得分:3)
我知道这两个选择:
答案 1 :(得分:3)
正如我前面的人指出的那样,如果我们理解正确的话,正确的答案是composition。我们的想法是给页面一个模型,其中包含两个其他模型,例如
public class Car {
public Motor Engine { get; set; }
public List<Seat> Seats { get; set; }
}
这里的想法是,你的班级现在来自ViewPage<Car>
,它允许你这样做:
坐着behing&lt;%= Model.Engine.ToString()%&gt;引擎,有:
<ul>
<% foreach(var seat in Model.Seats) { %>
<li><%= seat.ToString() %>
<% } %>
</ul>
希望这能回答你的问题。
答案 2 :(得分:1)
组合物
public class CompositeViewModel
{
public ViewModelClass1 ViewModel1 { get; set; }
public ViewModelClass2 ViewModel2 { get; set; }
}
答案 3 :(得分:0)
创建一个视图模型类。
class ViewModel
{
MyClass1 Object1 { get; set; }
MyClass2 Object2 { get; set; }
}