#334 - OutputCache e la gestione della cache con ASP.NET

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:
http://net.aspitalia.com/liste/usag/esempi.asp?ID=334


Approfondimenti

Commenti

Esprimi il tuo giudizio su questo script:

Per procedere devi essere autenticato.

Bennyrosso scrive:
#334 - OutputCache e la gestione della cache con ASP.NET

A me la data si aggiorna ad ogni refresh, cosa c'è che non va?BennyBennyrosso
mercoledì 29 maggio 2002 | 7 risposte

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.




IN EVIDENZA
MISC