Se puede utilizar en código aspx.cs normal:
Caché caché = nuevo caché();
Pero en XXXX.CS, no puedes usar el método anterior, debes usar:
Nunca caduca
HttpContext.Current.Cache.Insert ("Nombre", "Wang Xiang", nulo, DateTime.MaxValue, TimeSpan.Zero, CacheItemPriority.NotRemovable, nulo);
Nombre: Clave
Wang Xiang: Valor
nulo: indica que no hay dependencias de caché
DateTime.MaxValue: el valor máximo de tiempo (9999-99-99 12:59:59), lo que indica que no se utiliza la política de vencimiento de tiempo absoluto
TimeSpan.Zero: Indica que no se utiliza la caducidad suave
CacheItemPrority.NotRemovable: Indica que la prioridad no es eliminar el Cache
nulo: si no lo usas mucho, déjalo nulo.
ASP.NET
Caducidad de tiempo absoluto (caduca automáticamente después de 10 segundos)
HttpContext.Current.Cache.Insert("Nombre", "Wang Xiang", nulo, DateTime.Now.AddSeconds(10), TimeSpan.Zero, CacheItemPriority.NotRemovable, nulo);
Caducidad del tiempo sin problemas (la caché caducará automáticamente si no se accede a ella durante 10 segundos consecutivos)
HttpContext.Current.Cache.Insert("Nombre", "Wang Xiang", nulo, DateTime.MaxValue, TimeSpan.FromSeconds(10));
Estrategia de actualización de caché
si (HttpContext.Current.Cache["UserCacheList"]! = nulo)
{
ht = (Hashtable)HttpContext.Current.Cache["UserCacheList"];
ht.Add(uId, HttpContext.Current.Cache["Usuario" + uId]);
}
demás
{
ht.Add(uId, HttpContext.Current.Cache["Usuario" + uId]);
//HttpContext.Current.Cache["UserCacheList"] = ht;
HttpContext.Current.Cache.Insert("UserCacheList", ht, nulo, DateTime.MaxValue, TimeSpan.Zero, CacheItemPriority.NotRemovable, nulo);
}