2009-06-03 13 views

Respuesta

40

Nos utilizar páginas maestras anidadas con frecuencia, con el fin de la disposición separada de serie incluye y el sitio amplio margen de beneficio, así:

Site.Master:

<%@ Master Language="C#" AutoEventWireup="true" Inherits="System.Web.Mvc.ViewMasterPage<PageViewModel>" %> 

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8"> 
    <meta name="language" content="en"> 
    <title><asp:ContentPlaceHolder ID="Title" runat="server"><%= Model.Page.Title %></asp:ContentPlaceHolder></title> 

    <% Html.RenderPartial("Head"); %> 

    <meta name="robots" content="index, follow"> 
    <meta name="robots" content="noodp"> 
    <asp:ContentPlaceHolder ID="ExtraHead" runat="server"></asp:ContentPlaceHolder> 
</head> 
<body > 

    <asp:ContentPlaceHolder ID="MainContent" runat="server"></asp:ContentPlaceHolder> 

</body> 
</html> 

luego tener un otro maestro de utilizar el Sitio .master,

Standard.Master:

<%@ Master Language="C#" AutoEventWireup="true" Inherits="System.Web.Mvc.ViewMasterPage<PageViewModel>" MasterPageFile="Site.Master" %> 
<asp:Content ContentPlaceHolderID="ExtraHead" runat="server"> 
    <asp:ContentPlaceHolder ID="ExtraHead" runat="server"></asp:ContentPlaceHolder> 
</asp:Content> 

<asp:Content ContentPlaceHolderID="MainContent" runat="server"> 


      <asp:ContentPlaceHolder ID="MainContent" runat="server"></asp:ContentPlaceHolder> 


</asp:Content> 
+2

Buen ejemplo, me gusta cómo demuestras que puede usar la misma ID de ContentPlaceHolder en cada nivel de la plantilla maestra – lambacck

+0

@Richard: Inherits = "System.Web.Mvc.ViewMasterPage " está dando error en mi caso. Más bien utilicé Inherits = "System.Web.Mvc. ViewMasterPage "y funcionó bien. ¿Podría explicar por qué? Sin embargo, su respuesta es excelente. –

+0

Muy bien. ¡Gracias! – Ricky

Cuestiones relacionadas