我正在编写我的模型的子集合('Vehicles')的局部视图,它将每个元素呈现在表格行中。因此我的模型是
的形式@model IEnumerable<OrderVehicleViewModel>
要使模型绑定起作用,我需要每个元素的名称为
形式Vehicles[0].LicenceExpiry
如果我使用EditorFor,那么名称将以
的形式生成item.LicenceExpiry
如果我使用名称值设置HtmlAttributes,它似乎被忽略了,为了解决这个问题,我必须这样做
@Html.TextBox("Vehicles[" + i + "].LicenceExpiry", item.LicenceExpiry)
问题是,我失去了所有格式,因为TextBox不遵守我的模型上的DisplayFormat属性,这意味着我必须为简单的boolen属性手动构建SelectLists,而EditorFor使用的默认模板为我做。实现这一目标的最佳方法是什么?