【发布时间】:2015-11-18 21:07:48
【问题描述】:
我正在处理订单。该页面将先前保存的订单项目加载到表中。表格的第一行是使用 Html.EditoFor() 添加新项目的行,如下所示:
@Html.EditorFor(m => m.OrderItems[0].Description)
当然,在这种情况下[0]代表什么,这只是为了证明目标。 为了显示现有项目,使用了一个 for 循环:
for (int i = 1; i < Model.OrderItems.Count; i++)
{ @Html.EditorFor(d => d.OrderItems[i].Description)}
订单项目存储在具有四个属性(Desc、Partnum、Cost、Qty)的 IEnumerable 列表中。
问题是:编辑器行是一个表单,当用户按下页面上的“添加”按钮时,该表单如何将新项目添加到现有列表中?
【问题讨论】:
-
您无法将项目添加到
IEnumerable。请改用List<T>等集合。 -
对不起,我的错误,它是列表。问题标题已更正。 @StephenMuecke,谢谢,检查这些。
-
您是如何在操作中加载 OrderItems 的?
-
来自控制器的@SandeepKumar
标签: c# asp.net-mvc forms razor ienumerable