我有像这样在一个视图中绑定的集合:无法建模视图模型
@model Foo
@Html.DisplayFor(model => model.FooName);
@{
int counter = -1;
}
@foreach(var bar in Model.Bars)
{
counter++;
<tr>
<td><span name = "Bars[@counter].BarName">@bar.BarName</span></td>
</tr>
}
其中:
class Foo
{
public string FooName { get; set; }
public ICollection<Bar> Bars { get; set; }
}
class Bar
{
public string BarName { get; set; }
}
即使我的观点有它的权利,当我回来后的Foo
但是,它不会回发它的Bars
。
public ActionResult DoStuffWithFoo(Foo foo)
{
Debug.Assert(foo.Bars != null); // fails
}
我已经省略了这个问题中不必要的和明显的部分,例如表格的标记。
“span”不是表单控件。你需要一个''。并使用'for'循环 - 'for(int i = 0; i m.Bars [i] .BarName)}' –