Je viens de commencer à apprendre MVC et j'essaie de comprendre comment cela fonctionne.MVC transférer des données entre les vues
Je ne souhaite pas envoyer des utilisateurs à des vues différentes pour toutes les opérations d'édition, d'insertion et de liste.
Dans mon exemple d'application, une vue contient une liste d'éléments et sous la liste un formulaire (pour insérer de nouveaux éléments) avec l'action "{Contrôleur}/Créer" mais aucune vue Créer.
Lorsqu'un utilisateur insère un nouvel élément, il le publie dans l'action Créer avec la fonction httpverb et crée l'élément, puis revient à l'action Lister avec la méthode RedirectToAction.
Mais je ne peux afficher aucun message (erreur, information, etc.) à l'utilisateur dans ce style car je ne peux pas transmettre de données entre l'action Créer et l'action Lister. Comment puis je faire ça?
Tempdata n'est pas la meilleure option et devrait l'éviter. référez-vous à ce qui suit pourquoi la tempdata n'est pas bonne: http://jonkruger.com/blog/2009/04/06/aspnet-mvc-pass-parameters-when-redirecting-from-one-action-to-another/ –
In l'exemple décrit dans le post que vous mentionnez, TempData est toujours utilisé, il est juste emballé de sorte qu'il n'est pas référencé explicitement. Même dans cette approche, TempData est le mécanisme correct pour transmettre ce type de données; la différence est juste dans la façon dont vous utilisez TempData. –