J'ai un modèle de vue de l'utilisateur qui a les propriétés suivantes:Comment lire un modèle de vue complexe sur POST?
public User user;
public List<Language> Languages;
-je envoyer le modèle ci-dessus à la vue et de l'utilisation des aides html pour construire la forme, donc je me retrouve avec quelque chose comme:
<form action="/Users/Edit/5" method="post"><input id="user_UserId" name="user.UserId" type="hidden" value="5" />
Prénom
Nom
Email
<br />
<input id="user_Email" name="user.Email" type="text" value="[email protected]" />
Langue
- en
en
Maintenant, j'essaie de lire le POST dans quelque chose qui d'abord était quelque chose comme:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Modifier (int UserId, sous forme FormCollection) {
et ne peut pas obtenir la variable user.UserId , user.FirstName variable etc.
Toute idée de ce qui doit être fait pour pouvoir lire ce type de requête POST. Je suis un peu réticent à modifier mon ViewModel car il est très simple et facile à maintenir tel quel.
Merci.
Je ne semble pas comprendre comment appliquer le message spécifié ci-dessus à mon cas spécifique. Puis-je peut-être modifier le nom des éléments d'entrée qui en résultent? J'utilise l'assistant HiddenFor pour l'ID utilisateur. – Interfector
Notez le "using (Html.BeginCollectionItem ("gifts") "L'astuce consiste à entourer votre collection avec cette classe d'assistance, c'est la partie la plus importante de l'article. – pvieira