属性,要从中填充一组隐藏字段:
public abstract class MyPageView
{
[UIHint("List")]
public IEnumerable<IOption> OptionList { get; set; }
}
执行此操作的命令:
@Html.EditorFor(m => m.OptionList)
定义的“列表”模板的实现:
@model IEnumerable<RoomWanted.FlatShare.Services.ViewModels.Options.IOption>
@for (int i = 0; i < Model.Count(); i++)
{
@Html.HiddenFor(x => Model.ToList()[i].Id)
@Html.HiddenFor(x => Model.ToList()[i].Name)
}
我得到的生成:
<input id="OptionList__0__Id" name="OptionList.[0].Id" type="hidden" value="1" />
<input id="OptionList__0__Name" name="OptionList.[0].Name" type="hidden" value="New York" />
我需要生成什么,以便模型绑定正常工作:
<input id="OptionList_0__Id" name="OptionList[0].Id" type="hidden" value="5"></input>
<input id="OptionList_0__Name" name="OptionList[0].Name" type="hidden" value="New York"></input>
关于如何摆脱那个点的任何想法,所以我有OptionList[0].Id
而不是OptionList.[0].Id
?
干杯。