У меня есть модель представления пользователя, который имеет следующие свойства:Как читать сложную модель вида на POST?
public User user;
public List<Language> Languages;
я посылаю выше модели с точки зрения и использовать HTML хелперов для построения формы, так что я в конечном итоге что-то вроде:
<form action="/Users/Edit/5" method="post"><input id="user_UserId" name="user.UserId" type="hidden" value="5" />
Имя
Фамилия
Email
<br />
<input id="user_Email" name="user.Email" type="text" value="[email protected]" />
Язык
- ан
ан
Теперь, я стараюсь читать POST в чем-то, что изначально было что-то вроде:
[AcceptVerbs(HttpVerbs.Post)]
общественного ActionResult Edit (INT UserId, форма FormCollection) {
и не может получить переменную user.UserId , user.FirstName variable и т. д.
Любая идея, что нужно сделать, чтобы читать этот запрос POST. Я вроде бы неохотно изменяю свой ViewModel, поскольку он очень прост и удобен в обслуживании.
спасибо.
Я, кажется, не понимаю, как применить указанное выше сообщение к моему конкретному случаю. Могу ли я изменить название приведенных элементов ввода? Я использую помощник HiddenFor для UserId. – Interfector
Обратите внимание на «использование (Html.BeginCollectionItem («подарки»). Трюк состоит в том, чтобы окружить вашу коллекцию этим классом-помощником. Это самая важная часть статьи. – pvieira