Nous disposons d'une plate-forme en blanc construite sur Asp.Net MVC2. À l'heure actuelle, le site dispose de 6 contrôleurs, ainsi que de toutes les vues de base, etc., qui peuvent lui permettre de fonctionner dès la sortie de la boîte. Jusqu'à présent, nous avons construit 5 sites et tout a été génial.Etendez le site MVC existant pour transmettre de nouvelles données dans ViewData pour chaque action
Maintenant, cependant, j'ai une exigence qui signifie que je dois être en mesure de passer un nouveau morceau de données (dans le dictionnaire ViewData sera bien) à toutes les vues de toute action. Ces données sont ensemencées à partir d'une chaîne de requête, puis d'un cookie. L'une des principales raisons à cela est de pouvoir ajouter une image supplémentaire à la page maître du site en fonction de la valeur de ces données. Je pourrais bien sûr être vraiment sale et placer le code de désérialisation dans la page maître; mais je préfère trouver un moyen de s'assurer qu'il est ajouté à la ViewData pour chaque requête qui n'implique pas l'héritage du contrôleur et la méthode d'action remplaçant (!).
Toutes les idées grandement grandement appréciées!
Genius - la dernière solution d'utilisation des actions enfants fonctionne absolument parfaitement et s'intègre parfaitement avec la façon dont le site se cumule déjà. J'ai les données en tant que paramètre de méthode d'action qui utilise un classeur de modèle personnalisé (qui interagit avec les cookies et la chaîne de requête), qui déclenche alors une vue partielle pour le contenu, passant simplement l'objet lié en tant que modèle. Le maître utilise alors simplement une seule ligne Html.RenderAction() et maintenant il fonctionne sur toutes les pages. Merci :) –