Comment passer Formcollection et de la valeur de Modèle dans le même temps, à partir de l'affichage de contrôleur?
J'ai cshtml page ayant le code comme ceci
model Kouponer.Models.person_T
@using (Html.BeginForm("BuynowForm", "Home"))
{
<label>@Model.name</label>
<label>address</label>
@Html.TextBox("address")<div>
<input type="submit" value="Submit" class="btn btn-primary" />
}
Et mon actionresult méthode est
[HttpPost]
public ActionResult BuynowForm(FormCollection col)
{ string address = col["address"];
return View();
}
Ici, je vais seulement la formcollection valeurs. Comment passer le modèle avec
le formcollection?
- Veuillez lire ce lien en fait, vous ne devriez JAMAIS utiliser FormCollection
- soin d'expliquer pourquoi quelqu'un devrait JAMAIS utiliser FormCollection? Existe-il des problèmes de rendement ou d'un autre problème?
- Vérifiez ce que d'autres stackoverflow lien de façon plus détaillée la réponse que je pourrais donner
- merci pour l'info
- Il y a un moment, je tiens à utiliser FormCollection. Quand je veux avoir une méthode Get et Post, mais je n'ai pas besoin de paramètres pour... mettre FormCollection en tant que paramètre pour le poste résout ce problème. Bien sûr, dans ce cas, je n'ai pas vraiment l'utiliser... c'est juste là pour m'assurer de ne pas obtenir une erreur de compilation pour les doublons de signatures de méthode.
Vous devez vous connecter pour publier un commentaire.
Dans le
Controller
classe deSystem.Web.Mvc
espace de noms il y a unHttpRequestBase
propriété appeléeDemande
avec toutes les données de l'actuel de la requête http. Parmi ses propriétés, il est leNameValueCollection
propriété appeléeFormulaire
vous êtes à la recherche pour.L'utilisation serait quelque chose comme ceci:
NameValueCollection
et non à partir de laperson_T
objet?Sauf si je suis complètement à côté de quelque chose, vous devez simplement être en mesure d'ajouter le type de modèle sur le contrôleur de sig.
Cependant, il semble redondant d'avoir besoin de l'FormCollection objet si vous allez être en utilisant le modèle de liaison. Je voudrais lire le lien donné dans les commentaires et juste aller avec le modèle de liaison.