MasterPage a ripetizione...

di Andrea Zani, in .NET2,

Quando vengo preso dai dubbi...

Con le MasterPage è possibile inserire lo stesso cidice HTML all'interno delle pagine, utilissimo per titoli e menu vari dei siti. E' anche possibile inserire pagine "Master" all'interno di altre pagine "Master"... ma dove sta il limite? C'è un limite di sotto Master?

Non ho resistito ed ho fatto delle prove.

Ho scritto la prima pagina con questo codice:

<%@ Master Language="VB" %>
<body>
    <form id="form1" runat="server">
    <div>
        <h1>Io sono il padre dei padri dei padri</h1>
        <asp:contentplaceholder id="ContentPlaceHolder1" runat="server">
        </asp:contentplaceholder>
    </div>
    </form>
</body>
</html>

Quindi con mi sono scritto un generatore di codice per scrivere tutti i "figli":

<%@ Master Language="C#" MasterPageFile="~/master/padre1.master" %>
<asp:Content ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<p>Io sono il figlio 2</p>
<asp:contentplaceholder id="ContentPlaceHolder2" runat="server">
</asp:contentplaceholder></asp:Content>

E così via, fino alla pagina finale:

<%@ Page Language="C#" MasterPageFile="~/master/padre1000.master" Title="Untitled Page"%>
    <script runat="server">
        void Page_Load()
        {
            ora.Text = DateTime.Now.ToString();
        }    
    </script>
<asp:Content ContentPlaceHolderID="ContentPlaceHolder1000" Runat="Server">
<asp:Label ID="ora" Runat="Server" />
</asp:Content>

Dico subito che non ho visto il limite: sono arrivato a 1.000 masterpage inserite uno all'interno dell'altra. Più che sufficienti per ogni scopo, no? Il problema reale è stato un altro: il tempo di compilazione. Anche allungando il timeout di compilazione a trent'anni, per sole 300 masterpage sul mio PC (P4 2.4GHz), ci sono voluti all'incirca 6 minuti la prima volta che è stata chiamata la pagina (nelle chiamate successive le risposte sono istantanee ovviamente). Come tempi di compilazione accettabili ho notato che non si deve andare oltre le 50.

Arrivato a 1.000 mi sono stancato e non ho investigato oltre...

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Nella stessa categoria
I più letti del mese