我有一个视图特定的模型,它将我的一些对象组合在一起,但我对一个对象列表有一些问题。
我的模特是这样的:
public class RouteSubcontract
{
public RoutingSubcontracts Subcontracts { get; set; }
public RoutingPhases Phases { get; set; }
public List<RoutingApprovals> Approvals { get; set; }
}
我有我的创建表单,一切正常,我正在使用像这样的html助手:
@Html.EditorFor(model => model.Subcontracts.subRevNbr, new { htmlAttributes = new { @class = "textReplace", @id = "frmRevNbr" } })
但问题是,当我需要获得批准清单时,我甚至不确定如何从此开始。我需要能够创建项目列表,我可以使用jquery有一个按钮,然后创建我需要输入数据的文本框行,但我不确定如何ID或命名它们以便它们被正确选取我的帖子回来了。
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult AdminRoutingCreate(RouteSubcontract rs)
答案 0 :(得分:1)
对于集合,modelbinder需要以下列格式命名的输入:ListProperty[Index].Property
。例如,如果您要在名为RoutingApprovals
的{{1}}上修改属性,则需要以下内容:
Foo
在回帖后,你最终会得到三个<input type="text" name="Approvals[0].Foo" />
<input type="text" name="Approvals[1].Foo" />
<input type="text" name="Approvals[2].Foo" />
个实例。