Когда мы передаем в Controller один объект, то все просто и понятно.
А что если нам нужно принимать коллекцию объектов? Для примера возьмем следующую модель сотрудников:
На сервере нам нужно получить коллекцию пользователей
Для передачи коллекции в контроллер нужно сформировать такую разметку (сотрудников у нас будет n+1):
А что если нам нужно принимать коллекцию объектов? Для примера возьмем следующую модель сотрудников:
public class Employee()
{
public string FirstName {get;set;}
public string SecondName {get;set;}
}
На сервере нам нужно получить коллекцию пользователей
public ActionResult ActionName(List<Employee> employees)
{
...
}
Для передачи коллекции в контроллер нужно сформировать такую разметку (сотрудников у нас будет n+1):
<form method="post" action="/ControllerName/ActionName">
<input type="text" name="employees[0].FirstName" value="" />
<input type="text" name="employees[0].SecondName" value="" />
<input type="text" name="employees[1].FirstName" value="" />
<input type="text" name="employees[1].SecondName" value="" />
...
<input type="text" name="employees[n].FirstName" value="" />
<input type="text" name="employees[n].SecondName" value="" />
<input type="submit" value="submit"/>
</form>
Есть еще решение о передачи коллекции через JavaScript, но об этом в следующий раз.
Спасибо большое! У меня успешно заработало.
ОтветитьУдалить