Это возможно с помощью встроенного связывателя модели, но вам нужно немного по-обычному присваивать имена объектам формы.Во-первых, ваше действие должно принимать коллекцию:
[HttpPost]
public ActionResult CreateFoos(List<Foo> foos)
{
// I have a list of the foo objects that were posted
}
А затем, в представлении, предположим, что вы хотите создать форму для каждого объекта:
<% for (int i = 0; i < Model.Count; i++) { %>
<%: Html.TextBoxFor(x => x[i].Property1) %>
<%: Html.TextBoxFor(x => x[i].Property2) %>
<%: Html.TextBoxFor(x => x[i].Property3) %>
<% } %>
Обратите внимание накак элементы управления отображаются в HTML, потому что в вашем представлении «создание» может потребоваться кнопка javascript, позволяющая пользователю добавить еще одну запись, и вам придется увеличивать индекс для каждого дополнительного элемента управления.Это не так сложно, но я просто хотел предупредить вас, чтобы вы обратили внимание на источник, который он на самом деле генерирует.