J'ai besoin d'options de navigation, qui nécessitent des clés spécifiques à l'utilisateur courant, qui résident dans une page maître. J'ai besoin de conseils sur les meilleures pratiques.Comment définir les variables de navigation dans les pages maîtres MVC
En ont les liens suivants dans une navigation de gauche dans un masterpage
http://www.example.com/manageShop/123
Où '123' est l'identifiant du magasin que le courant l'utilisateur est le gestionnaire de. J'ai besoin d'une certaine façon de la passer à la masterpage
Actuellement, je vais quelque chose à cet effet:
<li><%= Html.ActionLink<ShopController>(x => x.ManageShop((int)Session["ShopKey"]), "Manage")%></li>
Je pensais que c'était une bonne idée que je ne pour régler la ShopKey une fois dans la session et c'est fait, l'inconvénient est que iv remarqué que la session se mélange si vous avez le site ouvert est de deux onglets.
Sinon j'ai essayé ceci:
<li><%= Html.ActionLink<ShopController>(x => x.ManageShop((int)ViewData["ShopKey"]), "Manage")%></li>
Mais cela signifie que vous devez garder le réglage de la ViewData dans toutes les actions dans chaque contrôleur. Ce qui est horrible.
EDIT: J'ai eu alook à des filtres comme eu-ge-ne suggéré ci-dessous, mais je ne résout pas vraiment mon problème car j'ai toujours le problème de définir le ShopKey partout?
Quelle est la solution?
Ce n'est pas terrible, si vos contrôleurs dérivent du contrôleur de base, qui ajoute ViewData nécessaire. –
Donnez-moi un exemple de comment? Je ne peux pas voir comment une base aiderait – Dan