ASP.NET 2.0 fornisce nuove funzionalità dedicate all'utilizzo delle risorse di tipo binario, ad esempio immagini.
In passato (script #809) abbiamo già analizzato le nuove caratteristiche dedicate alla localizzazione, in questo script vedremo invece come accedere a risorse binarie presenti nei file di risorse.
Con ASP.NET 2.0 è stato introdotto un nuovo handler, di nome WebResource.axd, che ha il compito di caricare, attraverso una richiesta come http://web/WebResource.axd?d=Assembly&t=Time di accedere alla risorsa e restituirla via HTTP.
Dopo aver aggiunto dunque il file dentro la directory Resources, è necessario decorare l'assembly (nel file AssemblyInfo.*) con questo attributo:
[assembly: WebResourceAttribute("ASPItalia.com.Resources.myscript.js", "application/x-javascript")]
Successivamente sarà possibile richiamare il codice utilizzando questo snippet:
Page.ClientScript.GetWebResourceUrl(typeof(Page), "ASPItalia.com.Resources.myscript.js")
In questo modo, il testo del file Javascript sarà fornito direttamente via URL, senza includerlo nella pagina. Questa tecnica è utilizzata anche, ad esempio, nei Validator Controls di ASP.NET 2.0.
E' anche possibile usare, nella pagina, questa forma abbreviata:
[code lang="xml"]<script type="text/javascript" src="<%=WebResource("ASPItalia.com.Resources.myscript.js")%>" />
L'effetto che produce è sempre e comunque quello di ricavare l'URL, che nel primo caso è fatto però attraverso un codice che può essere utilizzato per manipolare direttamente le proprietà di un controllo.
Quando si utilizza in Release, questo handler fa uso della Cache, pertanto preseva il web server da un carico eccessivo, evenienza che invece non risulta in debug, dove le risorse vengono ogni volta richieste e scaricate.
Approfondimenti
#809 - Le novità della localizzazione con ASP.NET 2.0
https://www.aspitalia.com/script/809/Novita-Localizzazione-ASP.NET-2.0.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Short-circuiting della Pipeline in ASP.NET Core
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Load test di ASP.NET Core con k6
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Implementare il throttling in ASP.NET Core
Effettuare il binding di date in Blazor
I più letti di oggi
- Vuoi incontrare Bill Gates? Viaggia con ASPItalia.com!
- Customizzare il pager del DataGrid
- Stabilire un collegamento VPN tra una Web App e una Virtual Network
- Documentare ASP.NET Web API con Swagger
- Usare i servizi REST di BING per ottenere informazioni sulla posizione dell'utente
- Visual Studio 2005 CTP May