La cache di ASP.NET
Martedì 13 Dicembre 2011 - 16:17
di Gianni Malanga

Volevo segnalare una novità del .NET Framework 4.x che forse non tutti conoscono perché il vecchio metodo di operare è ancora possibile. Parliamo della Cache di ASP.NET che fino alla versione 3.5 del Framework era utilizzabile unicamente referenziando l’assembly System.Web.dll ed andando ad usare la classe System.Web.Caching.Cache. Fin qui nulla di male se non che, nel corso del tempo, vista la notevole utilità di questa funzionalità, si è cominciato ad utilizzare la cache di ASP.NET anche in applicazioni non web quali WPF e Windows Forms. Era sufficiente infatti referenziare l’assembly ed utilizzare l’oggetto Cache esattamente come si faceva in un’applicazione ASP.NET.
Com’è evidente, però, era necessario referenziare l’intero assembly System.Web.dll per poi utilizzarne solo una piccolissima parte. Per questo motivo è stato ora introdotto a partire dalla versione 4.0 del .NET Framework il nuovo assembly System.Runtime.Caching.dll che contiene solo ed unicamente namespace, classi e tipi base relativi alla funzionalità di caching.
Nello specifico il namespace System.Runtime.Caching contiene sia classi astratte da utilizzare per implementare una propria gestione custom della cache sia una classe concreta MemoryCache che somiglia moltissimo alla classe Cache di ASP.NET.
In questo modo è sufficiente referenziare un assembly molto più piccolo per ottenere la stessa utile funzionalità.
Categoria: Microsoft Dev | Permalink
Commenti
1
Praticamente con questa classe salva gli oggetti in memoria ?
Non è un “clone” delle variabili public e shared ?.
# - postato da Andrea - 14 Dicembre 2011 - 15:59
2
Noooo, sono cose ben diverse. L’oggetto Cache ti gestisce attraverso il cosiddetto “scavenging” la durata degli oggetti che inserisci in cache, potendone regolare il tempo di vita e le modalità per il loro aggiornamento.
# - postato da Gianni Malanga - 15 Dicembre 2011 - 11:36







