Question

J'ai une action que je dois reporter à une autre action si elle remplit certaines conditions, mais je suis incapable de conserver les données du formulaire lors du passage à l'action suivante.

L'action de réception accepte un FormCollection, que l'action d'envoi

Actuellement, je fais un renvoi RedirectToAction (formulaire "action", "contrôleur",). Et je peux déterminer que la variable de formulaire a des clés avant de rediriger (form.HasKeys () = true).

Cependant, lorsque l'action est atteinte, le FormCollection est vide (form.HasKeys () = false).

Des idées? Existe-t-il une méthode 'PostToAction' qui me manque?

FYI: J'utilise ASP.NET MVC Beta. Merci beaucoup!

Modifier: Si vous rencontrez ce problème, consultez la page Modèle PRG . C’est le terme réel de ce que je cherchais à faire, qui permet également de jolies URLs.

Était-ce utile?

La solution

Lorsque RedirectToAction est appelé, il effectue une redirection HTTP et un processus GET vers l'autre URL d'action. Si vous devez réutiliser le code d'un autre contrôleur, je ferais ce que suggère ewalshe, déplacez le commun vers un BaseController ou un service métier et déléguez les deux actions à celui-ci.

Ces liens peuvent aider:

Autres conseils

Je refactoriserais les deux contrôleurs et placerais le code commun dans un assistant ou dans une classe de base commune. Ainsi, les actions des deux contrôleurs peuvent être déléguées au code commun.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top