mvc3 intégrer une vue partielle dans un autre
J'ai une vue partielle qui se compose d'un div avec un benner que je change une fois par semaine.
Cette bannière est incorporé dans un délai de 10 pages qui ont la même mise en page.
Donner une page d'Index.cshtml ou AboutUs.cshtml, les deux étant des vues partielles et avoir la laypout _Layout.cshtml ma question est:
Puis-je insérer le code dans la page d'Index.cshtml ou AboutUs.cshtml qui rend la Bannière.cshtml?
quelque chose comme:
à l'intérieur de l'Index.cshtml ou AboutUs.cshtml j'ai @Html.Renderbanner("bannière.cshtml");
Vous devez vous connecter pour publier un commentaire.
Oui,
Dans votre vision partagée dossier, ajouter votre vue partielle et de l'appeler _Banner.cshtml
Sûr, vous pouvez toujours:
à partir d'une vue ou une vision partielle. Cela rendra les
Banner.cshtml
partielle à l'endroit où vous l'avez appelé ce helper.Utiliser @Html.RenderPartial("YourViewName");
Tout d'abord, juste pour clarifier: l'Index et AboutUs vraiment des vues partielles dans votre scénario? Qui peut
changer mes conseils, mais normalement, je vois trois options:
Rasoir Helper, créer une Bannière.cshtml dans App_Code avec le code suivant:
Alors appel dans l'Index.cshtml:
Html Helper Extension, un peu exagéré ici, probablement, (voir le tutoriel sur le web)
Vue Partielle: Créer Des "_MyBanner.cshtml" et utilisez la commande suivante à l'Index.cshtml:
(Numéro 3 est celle qui peut être difficile si l'Indice et AboutUs sont également des vues partielles, mais 1 celui que je choisirais.)
Remarque: Il existe une différence entre Html.Partielle et Html.RenderPartial. Ce dernier écrit directement dans le flux de sortie et vous demande de l'appeler dans les parenthèses. Dans MVC autant que je sache, il est préférable d'utiliser de l'Html.Partielle.
Vous pouvez créer un RenderSection dans la mise en page.cshtml
si vous avez besoin de voir le secction dans sur.cshtml
utilisation
si vous n'avez pas besoin de la bannière ne pas l'inclure