Je suis, en utilisant MVC pour développer une application Web, et j'ai besoin d'utiliser MasterPages imbriquées dans mon site, afin de partager les composants visuels.Pages maîtres MVC imbriquées
J'ai deux pages maîtres et ContentPage:
- Parent.master
- Child.master
- Content.aspx
Je veux faire référence à un ContentPlaceHolder placé sur le dessus Parent.master de la vue Contenu qui a Child.master comme MasterPage. Il semble que je puisse utiliser les ContentPlaceHolders du parent direct, mais pas du parent indirect. Voyons voir avec un échantillon:
Parent.master
<%@ Master Language="C#"
Inherits="System.Web.Mvc.ViewMasterPage"%>
<HTML>
<head runat="server">
<title>
<asp:contentplaceholder id="Title" runat="server" />
</title>
</head>
<body>
<asp:contentplaceholder id="Body" runat="server" />
</body>
<HTML>
Child.Master
<%@ Master Language="C#" MasterPageFile="~/Views/Shared/Parent.master"
Inherits="System.Web.Mvc.ViewMasterPage"%>
<asp:Content ID="BodyContent" ContentPlaceHolderID="Body" runat="server">
<asp:contentplaceholder id="Body1" runat="server" />
<asp:contentplaceholder id="Body2" runat="server" />
</asp:Content>
Content.aspx
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Child.master"
Inherits="System.Web.Mvc.ViewPage" %>
<asp:Content ID="TitleContent" ContentPlaceHolderID="Title" runat="server">
<!-- Placed to the top parent Master page (does not work) -->
The page title
</asp:Content>
<asp:Content ID="Body1Content" ContentPlaceHolderID="Body1" runat="server">
<!-- Placed in the direct parent Master page (Works) -->
Body content 1
</asp:Content>
<asp:Content ID="Body2Content ContentPlaceHolderID="Body2" runat="server">
<!-- Placed in the direct parent Master page (Works) -->
Body content 2
</asp:Content>
Le résultat est que je peux voir Body content 1
et Body content 2
dans ma page, mais pas le page title
.
connexes Question http://stackoverflow.com/questions/947134/are-there-nested-maître-pages-dans-asp-net-mvc –