Я пишу частичное представление для дочерней коллекции («Транспортные средства») моей модели, которая отображает каждый элемент в строке таблицы. Моя модель поэтому в форме
@model IEnumerable<OrderVehicleViewModel>
Для работы привязки модели мне нужно, чтобы имя каждого элемента было в форме
Vehicles[0].LicenceExpiry
Если я использую EditorFor, то имена генерируются в виде
item.LicenceExpiry
Если я устанавливаю атрибуты HtmlAttributes со значением имени, оно, по-видимому, игнорируется, чтобы обойти это, я должен сделать
@Html.TextBox("Vehicles[" + i + "].LicenceExpiry", item.LicenceExpiry)
Проблема в том, что я теряю все форматирование, так как TextBox не соответствует атрибуту DisplayFormat в моей модели, и это означает, что мне нужно вручную создавать списки выбора для простых свойств boolen, тогда как шаблон по умолчанию, используемый EditorFor, делает это для меня , Каков наилучший способ достичь этого?