如何在使用EditorFor时设置name属性?

时间:2011-08-02 09:23:39

标签: asp.net-mvc-3 editorfor

我正在编写我的模型的子集合('Vehicles')的局部视图,它将每个元素呈现在表格行中。因此我的模型是

的形式
@model IEnumerable<OrderVehicleViewModel>

要使模型绑定起作用,我需要每个元素的名称为

形式
Vehicles[0].LicenceExpiry

如果我使用EditorFor,那么名称将以

的形式生成
item.LicenceExpiry

如果我使用名称值设置HtmlAttributes,它似乎被忽略了,为了解决这个问题,我必须这样做

@Html.TextBox("Vehicles[" + i + "].LicenceExpiry", item.LicenceExpiry)

问题是,我失去了所有格式,因为TextBox不遵守我的模型上的DisplayFormat属性,这意味着我必须为简单的boolen属性手动构建SelectLists,而EditorFor使用的默认模板为我做。实现这一目标的最佳方法是什么?

0 个答案:

没有答案