ThingController создает модель, которая содержит (среди прочих свойств) коллекцию вещей.Их можно редактировать в виде следующим образом:
<form action="@Url.Action("Update", "Thing")" method="post">
<table>
<tr>
<th>Foo</th>
<th>Bar</th>
</tr>
@foreach (var thing in ViewData.Model.Things)
{
<tr class="raw-data">
<td class="raw-data"><input name="things[@rowCount].Foo" class="raw-data" readonly="readonly" type="text" value="@thing.Foo" /></td>
<td class="raw-data"><input name="things[@rowCount].Bar" class="raw-data" type="text" value="@thing.Bar" /></td>
</tr>
rowCount++;
}
</table>
<br />
<input type="submit" value="OK" />
</form>
Контроллер содержит следующее действие, которое позволяет одновременно обновлять несколько вещей:
public ActionResult Update(ThingModel[] things)
{
...
}
Я добавил некоторую проверкуатрибуты свойств класса Thing:
[Required]
[Range(0, 500000, ErrorMessage = "Foo must be within 0 and 500,000.")]
public double Foo{ get; set; }
[Required]
[Range(0, 500000, ErrorMessage = "Bar must be within 0 and 500,000.")]
public double Bar { get; set; }
Дело в том, что я не могу понять, как добавить ненавязчивую проверку с помощью помощников TextBoxFor и т. д.
На данный момент я думаю, чтоправильный подход заключается в том, чтобы вручную разметить поля ввода с помощью атрибутов проверки, но мне было интересно, кто-нибудь может указать мне какую-то документацию, учебное пособие и т. д., которые демонстрируют использование помощников, несколько моделей и ненавязчивая проверка