【发布时间】:2013-03-25 21:54:27
【问题描述】:
假设...
在剃刀视图中,我们有一个对象 A 的模型
@Model Object A
对象A是类A的一个实例,它有多个类B的实例,其中有一个类型为C的列表
Class A
public B Object1
public B Object2
Class B
public List<C> List1
对象 B 有一个 EditorView。对象 A 有一个更大的视图,其中每个对象 B 使用一个对象 B EditorView。
@Model Object B
...do things with list in object B
因此,当视图呈现时,存在多个 B 类的编辑器视图。我可以在编辑器视图中使用什么代码将额外的 C 添加到 B Object1 中的列表 List1 而不会影响 B Object2 中的列表 List1。
@Model Object B
... would like to add to this list and have it post back, and only effect the b it in. I don't know how to reference this object's master to add to this list exculsively
我看了几次http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx。就像拥有多个...
<input type="text" name="[0].Title" value="Curious George" />
<input type="text" name="[0].Author" value="H.A. Rey" />
<input type="text" name="[0].DatePublished" value="2/23/1973" />
<input type="text" name="[0].Title" value="Curious George" />
<input type="text" name="[0].Author" value="H.A. Rey" />
<input type="text" name="[0].DatePublished" value="2/23/1973" />
在同一页面上,并希望他们在回发时回发给正确的主人。这就是我想做的。我要动态添加
<input type="text" name="...." value=""/>
但是我遇到了一些问题,我应该在名称中添加什么来实现它。执行@Html.EditorFor 和@Html.HiddenFor 似乎可以将它们模型绑定到正确的父级,但它们不允许我向列表中添加额外的输入。
我的直觉方向——用反射(或不)做一些事情来得到主人的对象的名字,用这个来创建一个合适的名字?
请提供想法或代码示例。谢谢。
【问题讨论】:
标签: asp.net-mvc-3 list razor model-binding