7
votes

ASP.NET MVC FORMCOLLECTION

public  ActionResult Edit(int  id, FormCollection formValues) {

    // Retrieve existing dinner
    Dinner dinner = dinnerRepository.GetDinner(id);

    // Update dinner with form posted values
    dinner.Title = Request.Form["Title"];
    dinner.Description = Request.Form["Description"];
    dinner.EventDate = DateTime.Parse(Request.Form["EventDate"]);
    dinner.Address = Request.Form["Address"];
    dinner.Country = Request.Form["Country"];
    dinner.ContactPhone = Request.Form["ContactPhone"];

    // Persist changes back to database
    dinnerRepository.Save();

    // Perform HTTP redirect to details page for the saved Dinner
    return RedirectToAction("Details", new { id = dinner.DinnerID });
}
formValues is not used in the method. What is its purpose?

1 commentaires

Pensez à utiliser ViewModels Jacopretorius.net/2010/01 / ...


3 Réponses :


0
votes

Regardez comment FormCollection est utilisé ici: Comment Un formulaire peut-il être énuméré dans ASP.NET MVC?


0 commentaires

1
votes

juste pour faire quelques commentaires,

  1. dîner.eventdate = datetime.parse (demande.form.form]); est ce que la liaison modèle est censée se débarrasser de. En utilisant une vue fortement dactylographiée, vous devez obtenir un type DateTime dans le dîner.Eventdate, sans avoir à faire cela vous attribuant vous-même.

  2. Le formulaire retourne toutes les entrées soumises via le formulaire HTML et que vous pouvez récupérer ces éléments en utilisant la syntaxe suivante FormCollection ["Titre"] Étant donné que le nom de l'élément d'entrée est "titre"

    Les vues fortement typées sont simplement incroyables!


0 commentaires

24
votes

L'une des principales avancées de MVC se débarrasse de ce code d'affectation d'ennuyeux gauche. Il a mis en place des mécanismes qui peuvent faire ce travail pour vous. Dans ce cas, vous pouvez faire quelque chose comme ceci: xxx

espère que cela aide.


1 commentaires

puis-je créer ou Ajouter Valeurs à FormCollection à partir du modèle Propriétés dans une paire de valeur clé?