Jquery asp.net mvc-更改视图中的默认属性值
实际上,我有一个视图,一个编辑器模板,用于输入父对象的子集合中的每个项 伪代码:Jquery asp.net mvc-更改视图中的默认属性值,jquery,asp.net-mvc,binding,model,Jquery,Asp.net Mvc,Binding,Model,实际上,我有一个视图,一个编辑器模板,用于输入父对象的子集合中的每个项 伪代码: public class MyParent { public int MyParentID; public virtual ICollection<MyChild> Children; } 。。。它将添加一个随机属性。所以我试着这样做: @Html.HiddenFor(r => r.PropertyA, new { name="Parent[0].PropertyA"}) 但它
public class MyParent {
public int MyParentID;
public virtual ICollection<MyChild> Children;
}
。。。它将添加一个随机属性。所以我试着这样做:
@Html.HiddenFor(r => r.PropertyA, new { name="Parent[0].PropertyA"})
但它不会更改name属性。HiddenFor的这个重载似乎只会添加额外的属性,但不会更改默认属性
我的问题:是否有一种干净的方法来更改“name”属性,以便在回发时输出将与模型绑定一起工作?请尝试以下方法来覆盖name属性:
@Html.HiddenFor(r => r.PropertyA, new { @Name="Parent[0].PropertyA"})
这不是一个答案,事实上是自我推销,所以我希望这个评论不会持续太久,但我写了这个,而不是编辑模板。它能正确处理收藏。是的,这很有效!奇怪的是,我已经试过@name了,但没有成功。所以这个结果让我感到惊讶,因为属性的默认输出是name,而不是name。不管怎样,现在都可以了,非常感谢!
@Html.HiddenFor(r => r.PropertyA, new { random="myRandomValue"})
@Html.HiddenFor(r => r.PropertyA, new { name="Parent[0].PropertyA"})
@Html.HiddenFor(r => r.PropertyA, new { @Name="Parent[0].PropertyA"})