我的目标是生成客户收据的视图,他们将在提交订单后获得该视图。收据应包含他们订购的所有食品。每个食品可以包含多个子项。
模型正在返回如下数据;
如果你仔细看,那些拥有parentitemid的人就是子项。它们应该显示在其父项下。
目标应如下所示;
现在的问题是我尝试了很多东西(即if-else在foreach等等) 但没有得到这个观点。
是否可以从这种数据中生成这样的视图? 任何人都可以帮我解决一些想法!
修改
我有一些进展......现在看起来如何......
现在,我如何在主要项目下显示子项目的价格...... ??
这是我的代码
<%foreach (var i in Model.OrderItems)
{ %>
<tr>
<td style="vertical-align:top;">1</td>
<td style="width:40%;"><%:i.fiitemName%>
<br />
<table style="margin-left:10px;">
<%foreach (var k in Model.getOrderSubItems("36-171012-2", i.fiID))
{ %>
<tr style="height:30px;">
<td style="width:100px;"><%:k.FoodItemName %></td>
<td style="width:100px;"><%:k.SubItemPrice %></td>
</tr>
<%} %>
</table>
</td>
<td style="vertical-align:top;"><%:i.msize%></td>
<td style="vertical-align:top;"><%:i.ItemNote %></td>
<td style="vertical-align:top;"><%:i.mprice%></td>
</tr>
<%} %>
答案 0 :(得分:0)
你的模特看起来如何?一个简单的模型示例:
public class Order
{
public int Id { get; set; }
public List<Item> Items { get; set; }
public class Item
{
public int Id { get; set; }
public string Name { get; set; }
public int Qty { get; set; }
public decimal Price { get; set; }
public List<Item> SubItems { get; set; }
}
}
然后显示您可以遍历订单上的所有项目,然后在该项目中循环任何子项目。
foreach (var item in Order.Items)
{
foreach (var subItems in item.SubItems)
{
}
}