approprié Les vues par défaut échafaudés générées par ASP.NET MVC 2 contiennent des liens tels que:ASP.NET MVC 2 point Retour à la vue Liens
<%: Html.ActionLink("Back to List", "Index") %>
<%: Html.ActionLink("Create New", "Create") %>
Ces liens sont parfaits si je suis venu à cette page de ce même racine. Mais par exemple, si j'ai des ordres et des personnes et que je navigue vers /Orders/Edit/17
via /Persons/Orders/3
, alors 'retour à la liste' me renvoie à la commande 'root', non 'Persons root', où je veux aller, parce que la vue 'Edit Orders' ne connaît que les commandes . Cela rend la navigation difficile et interrompt le flux ..
Je souhaite réutiliser la même vue "Modifier les commandes", quel que soit l'endroit d'où je viens, mais je ne suis pas sûr de savoir comment transmettre cette information.
Je sais qu'il est possible de passer des paramètres comme /Orders/Edit/17?myparam=myvalue
mais cela limitera-t-il mes choix plus tard si j'ai besoin de passer des paramètres qui indiquent l'ordre de tri/filtre pour les grilles?
Quel est le moyen préféré de passer un retour/l'origine à ma vue afin qu'il puisse rendre les liens correctement? Sinon, comment puis-je appeler la vue différemment du contrôleur?
EDIT:
Pour une solution propre, voir THIS POST
Cette fonctionnalité semble être quelque chose qui aurait dû être pris en compte dans le cadre; Il semble assez difficile de spécifier ces paramètres car vous devez le faire pour tous les niveaux de navigation. – Harper