Appeler @ Html.Partial pour afficher une vue partielle appartenant à un autre contrôleur

Je développe une application ASP.NET MVC 3, dont les pages de contenu ont un modèle commun d’éléments de disposition. Toutefois, la page de connexion ne respectant pas cette disposition, je ne parviens pas à placer cette disposition dans \Views\Shared\_Layout.cshtml .

Je voudrais donc append une autre disposition partagée, disons, \Views\Shared\_Content.cshtml , et l’appeler depuis les vues de contenu … mais malheureusement, ces vues appartiennent à différents contrôleurs.

Existe-t-il un moyen d’invoquer @Html.Partial pour une vue appartenant à un autre contrôleur?

Ce n’est pas un problème.

 @Html.Partial("../Controller/View", model) 

ou

 @Html.Partial("~/Views/Controller/View.cshtml", model) 

Devrait faire le tour.

Si vous souhaitez passer par le (autre) contrôleur, vous pouvez utiliser:

 @Html.Action("action", "controller", parameters) 

ou l’une des autres surcharges

Comme GvS a dit, mais je trouve également utile d’utiliser des vues fortement typées pour pouvoir écrire quelque chose comme

 @Html.Partial(MVC.Student.Index(), model) 

sans cordes magiques.