我有一堂课:
public class ClientInformation{
public string UserName {get; set;}
public ICollection<RegionDistrictCity> RegionDistrictCity
{
get;
set;
}
public class RegionDistrictCity
{
public string Region { get; set; }
public string District { get; set; }
public string City { get; set; }
}
}
应该如何格式化 html 中属性 Region、District、City 的输入元素的 name 属性,以便使模型绑定器填充集合“ICollection Region District City”?
我尝试使用一个带有“ClientInformation”类型参数和格式类似于“[index].PropertyName”的 html 名称属性的操作方法,但在这种情况下,仅绑定属性“UserName”。
我尝试使用参数名称为“client”的操作方法,并将 html 名称属性格式化为“client[index].PropertyName”,但它不起作用。 (在这种情况下,如果我有一个“列表客户端”,那么它将被填充)
Thanks.
在 MVC4 中你应该使用for 循环而不是 foreach绑定您的收藏。然后,当您提交数据时,模型绑定器将能够填充您的模型。
@for (int i = 0; i < Model.RegionDistrictCity.Count; i++)
{
@Html.EditorFor(model => Model.RegionDistrictCity[i].Region)
}
但这仅在您不动态删除或添加项目到集合时才有效。
如果您想这样做,您应该使用 steve sanderson 创建的 BeginCollectionItem 帮助器。http://blog.stevensanderson.com/2010/01/28/editing-a-variable-length-list-aspnet-mvc-2-style/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)