2011-09-29 8 views
5

Ho trovato una risposta a una domanda simile (System.Web.Caching.Cache.NoSlidingExpiration in asp.net c#) e ho seguito i collegamenti, ma ho bisogno di informazioni più specifiche che non riesco a trovare.Cache.NoSlidingExpiration in ASP - quando viene ripristinato?

NoSlidingExpiration non si reimposta quando "l'accesso". Ma questo significa quando lo leggi? O anche quando lo scrivi?

Per esempio, se faccio

Cache.Insert("mykey", 42, null, DateTime.Now.AddMinutes(20), System.Web.Caching.Cache.NoSlidingExpiration); 

e poi 10 minuti più tardi, lo faccio:

Cache.Insert("mykey", 42, null, DateTime.Now.AddMinutes(20), System.Web.Caching.Cache.NoSlidingExpiration); 

ancora una volta, sarà la scadenza regolare?

Grazie!

risposta

7

Secondo il documento MSDN Cache.NoSlidingExpiration

Se utilizzato, questo campo imposta il parametro slidingExpiration al TimeSpan.Zero campo , che ha un valore costante pari a zero. L'elemento memorizzato nella cache scade in base al parametro absoluteExpiration associato alla chiamata del metodo Inserisci o Aggiungi.

Ciò significa che quando si chiama Add o Insert, qualunque sia il valore absoluteExpiration avete dato in quella chiamata sarà utilizzato per scadere tale elemento. Quindi nel tuo esempio:

DateTime.Now.AddMinutes(20)

significa che l'elemento sarà ripristinato dopo 20 minuti.

Problemi correlati