In un mio post precedente lamentavo il fatto, nel 2007, di dover avere ancora un occhio di riguardo per sviluppare siti che siano quanto meno presentabili per utenti con modem a 56K.

Mi sono reso conto di ulteriori problemi con master pages, e user control.

In caso di utilizzo di master pages e user control, bisogna stare molto attenti a quello che viene prodotto in seguito al render sulla pagina, ad esempio una master page con un

<asp:Content ID="mainContent" runat=server>
</asp:Content>

Al cui interno venga inserito uno user Control:

<uc1:Control id="LoginControl" runat="server"/>

Al cui interno venga inserita una normalissima TextBox

<asp:TextBox id="txtLoginName"/>

Viene renderizzato sul client con questo ID

<input type="text" id="ctl00_mainContent_LoginControl_txtLoginName" .../>

Provate a inserire all'interno della pagina un po' di validators, magari qualche extender di AjaxControlToolikit e i Bytes della vostra pagina andranno alle stelle.

Una singola pagina (abbastanza corposa dal punto di vista di componenti e validatori) รจ stata tagliata dagli originali 240K (senza considerare le librerie javascript incluse come riferimenti e quindi cachate dal client dopo la prima request) a circa 180K, un risparmio abbastanza ingente da convincerci a stare attenti agli ID utilizzati all'interno delle pagine e dei controlli, ora gli id assegnati ai vari content, usercontrol e controlli lato server producono id simili a:

<input type="text" id="ctl00_mc_lc_tLogName" ... />

In conclusione ... occhio agli ID !!!!

Technorati Tags: ,