asp.net - plantillas - master page definicion
¿Cómo resolver no puede encontrar error ContentPlaceHolder? (3)
Tener un momento "duh" tratando de implementar una nueva página de contenido
Aquí está la estructura
Master Page
---- Nested Master Page
-------- Nested Master''s Content Page
Margen:
Página principal
<asp:ContentPlaceHolder ID="bodyContent" runat="server">
</asp:ContentPlaceHolder>
Página maestra anidada
MasterPageFile="~/Views/Shared/Administrator.Master"
<asp:Content ID="Content2" CotentPlaceHolderID="bodyContent" runat="server">
</asp:Content>
Página de contenido del maestro anidado
MasterPageFile="~/Views/Intervention/InterventionMaster.master"
<asp:Content runat="server" ID="myContent" ContentPlaceHolderID="Content2">
</asp:Content>
Recibe error:
No se puede encontrar ContentPlaceHolder ''Content2'' en la página maestra ''/Views/Intervention/InterventionMaster.master'', verifique el atributo ContentPlaceHolderID del control de contenido en la página de contenido.
¿Qué podría estar haciendo mal?
No tienes ContentPlaceHolder
con ID = "Content2"
. Sólo tienes contenido con dicha identificación. Coloque otro marcador de posición dentro del contenido con ID="Content2"
y luego conéctese con el contenido de la página.
Página principal
<asp:ContentPlaceHolder ID="bodyContent" runat="server">
</asp:ContentPlaceHolder>
Página maestra anidada
<asp:Content ID="Content2" ContentPlaceHolderID="bodyContent" runat="server">
<asp:ContentPlaceHolder ID="nestedContent" runat="server">
</asp:ContentPlaceHolder>
</asp:Content>
Página de contenido del maestro anidado
<asp:Content runat="server" ID="myContent" ContentPlaceHolderID="nestedContent">
</asp:Content>
Una solución rápida y rápida sería omitir la página maestra anidada de la página de contenido de la maestra anidada
protected void Page_PreInit(object sender, EventArgs e)
{
Master.MasterPageFile = "~/Whatever.Master";
}
Use ID="MainContent"
<asp:Content ID="Content2" ContentPlaceHolder ID="MainContent" runat="server"></asp:Content>