Domanda

Come è possibile realizzare SquishIt per fagotto Css / Js attraverso Vista Pagine e renderlo in pagina master? Ho pensato che avrei potuto usare un ContentPlaceHolder sopra la porzione di rendering, ma sembra che ci sia qualche comportamento strano dove a volte aggiunge 3 file (1 nella pagina di visualizzazione e 2 nella pagina master), ma altre volte ignorerà il file aggiunte dalla vista pagina.

Index.aspx

<asp:Content ContentPlaceHolderID="CssFiles" runat="server">
    <% CssHelper.Add("home.css"); %>
</asp:Content>

Site.master

<asp:ContentPlaceHolder ID="CssFiles" runat="server" />
<% CssHelper.Add("reset.css"); %>
<% CssHelper.Add("master.css"); %>
<%=CssHelper.Render() %>

La mia soluzione attuale è un wrapper statico intorno classe Bundle statica di SquishIt che mantiene il BundleBuilder in HttpContext.Current.Items.

Sono curioso di sapere se questo è stato fatto con successo e come così.

È stato utile?

Soluzione

penso che potrebbe mancare il punto di bundling CSS e JavaScript un po '. Se avete intenzione di essere l'aggiunta di file CSS o JS su ogni vista, in combinazione con i file della pagina master, allora si sta creando un sacco di piccoli fasci che l'utente deve scaricare ogni volta.

Se non si dispone di un ton (e intendo una tonnellata) di JavaScript e CSS, quindi si sta meglio raggruppamento TUTTE del vostro CSS e JavaScript nello stesso fascio. In questo modo l'utente prende il colpo di scaricare la prima volta e poi viene memorizzato nella cache.

Se si dispone di una tonnellata di CSS e JavaScript, quindi utilizzare la funzione di fascio di nome e di creare pacchetti per le diverse sezioni del sito. Ma il punto è che si vuole ridurre al minimo il numero di pacchetti che si crea in modo che l'utente non deve tenere il download dei file.

L'unica eccezione a questo è per i browser mobili, dove hanno alcune limitazioni di formato di memorizzazione nella cache.

Altri suggerimenti

Si potrebbe abbandonare la nave, e cercare Chirpy: http://chirpy.codeplex.com/

In alternativa, si potrebbe modificare l'approccio ZController per soddisfare la vostra fantasia: http://www.weirdlover.com/2010/05/11/more-better-harder-zippy-cache-controller-in-asp-net-mvc /

Sono d'accordo con Justin, anche se (e AMORE SquishIt così com'è). Sei probabilmente meglio la creazione di un numero inferiore, fasci più grandi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top