Nell'articolo di introduzione ad ASP.NET 4.5 e ASP.NET MVC 4, abbiamo visto come i bundle ci permettaoo di ottimizzare i tempi di download delle nostre pagine web: impostando il flag di debug a false nel web.config, infatti, tutti i file referenziati dallo stesso bundle vengono associati a un unico indirizzo logico e minificati.
Sebbene questa tecnica apporti innegabili vantaggi, alle volte può essere più conveniente referenziare i riferimenti più comuni a un indirizzo di una CDN. Oltre al beneficio di non consumare banda, infatti, c'è un importante guadagno prestazionale: se, per esempio, sfruttiamo la CDN di jQuery, che è utilizzata da milioni di siti in tutto il mondo, sarà parecchio probabile che il file corrispondente si trovi già nella cache del browser di chi ci sta visitando, rendendo il download praticamente istantaneo.
I bundle supportano perfettamente questo scenario e consentono di specificare l'indirizzo della CDN in fase di definizione:
var jQueryCdn = "http://code.jquery.com/jquery-1.8.2.min.js"; var jQueryUiCdn = "http://code.jquery.com/ui/1.9.0/jquery-ui.js"; var jQueryUiCssCdn = "http://code.jquery.com/ui/1.9.0/themes/base/jquery-ui.css"; bundles.Add(new ScriptBundle("~/bundles/jquery", jQueryCdn) .Include("~/Scripts/jquery-{version}.js")); bundles.Add(new ScriptBundle("~/bundles/jqueryui", jQueryUiCdn) .Include("~/Scripts/jquery-ui-{version}.js")); bundles.Add(new StyleBundle("~/Content/themes/base/css", jQueryUiCssCdn) .Include("~/Content/themes/base/jquery.ui.css")); bundles.UseCdn = true;
Nel codice precedente, abbiamo sfruttato gli indirizzi di CDN ufficiali di jQuery e jQuery UI. Come possiamo notare, è possibile referenziare sia script che fogli di stile. Impostando il flag UseCdn a true, si ottiene che, una volta passati in modalità release, venga renderizzato esclusivamente l'indirizzo della CDN.
<link href="http://code.jquery.com/.../jquery-ui.css" rel="stylesheet"/> <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
In modalità debug, invece, i riferimenti emessi sono sempre quelli locali, in modo che siamo in grado di effettuare il debug del codice JavaScript sfruttando le versioni non minificate incluse nel progetto.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare Hybrid Cache in .NET 9
Dallo sviluppo locale ad Azure con .NET Aspire
Utilizzare i variable font nel CSS
Abilitare il rolling update su Azure Functions flex consumption
Utilizzare DeepSeek R1 con Azure AI
Utilizzare @property per animare nativamente un oggetto HTML tramite CSS
Configurare automaticamente un webhook in Azure DevOps
Integrare LLM alle nostre applicazioni in .NET con MCP
Integrare OpenAI tramite Aspire
Integrare modelli AI in un workflow di GitHub
Gestire progetti NPM in .NET Aspire
Ospitare n8n su Azure App Service


