Con le ASP per implementare meccanismi di caching a livello server, è necessario scrivere fisicamente un file su disco.
Il risultato alle volte è ottimo, ma si perde in flessibilità: è comunque necessario impostare in qualche modo meccanismo che aggiornino ogni tot minuti o giorni il contenuto di queste pagine e non sempre è possibile.
ASP.NET ci viene incontro finalmente con una gestione della cache davvero ottima. Ecco un esempio:
<%@ Page Language = "VB" %> <%@ OutputCache Duration = "60" Location = "server" VaryByParam = "none"%> <SCRIPT runat="server" Language="VB"> Sub Page_Load(sender as Object, e as EventArgs) Dim dtCurrent as DateTime = Now() txtCurrent.text = dtCurrent.toLongDateString() & " " & _ dtCurrent.toLongTimeString() End Sub </SCRIPT> Salvato nella cache <asp:label id="txtCurrent" RUNAT="server" />
Provate ad eseguirlo: per i prossimi 60 secondi, vedrete un messaggio che vi dice più o meno che il file è stato salvato nella cache del server in quel dato istante.
Per tutte le richieste, ASP.NET restituirà questa pagina, già compilata ed elaborata.
L'istruzione OutputCache supporta quest questi attributi:
- VaryByCystom = "browser"
in questo modo per ogni browser, verrà generata una versione differente
- VaryByHeader = "headers separati da ;"
verrà salvata in cache una copia della pagina per ogni richiesta che abbia quelle header
- VaryByParam = "parametri querystring sep da ;"
stessa cosa dell'attributo precedente. Bisogna indicare * per tutti i parametri, separarli da ; oppure none se non si desidera cambiare nulla.
Location serve per specificare dove memorizzare la pagina. Le opzioni più utili sono client e server.
L'attributo Duration, infine, indica per quanti secondi è valida questa impostazione.
Per vedere all'opera lo script:
https://www.aspitalia.com/liste/usag/esempi.asp?ID=334
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.