Ele pode ser usado em código aspx.cs comum:
Cache cache = new Cache();
Mas em XXXX.CS, você não pode usar o método acima, você deve usar:
Nunca expira
HttpContext.Current.Cache.Insert("Nome", "Wang Xiang", null, DateTime.MaxValue, TimeSpan.Zero, CacheItemPriority.NotRemovable, null);
Nome: Chave
Wang Xiang: Valor
null: indica que não há dependências de cache
DateTime.MaxValue: O valor máximo de tempo (9999-99-99 12:59:59), indicando que a política de expiração de tempo absoluto não é usada
TimeSpan.Zero: Indica que a expiração suave não é usada
CacheItemPrority.NotRemovable: Indica que a prioridade é não excluir o Cache
null: Se você não usa muito, deixe nulo.
ASP.NET
Expiração de tempo absoluto (expira automaticamente após 10 segundos)
HttpContext.Current.Cache.Insert("Nome", "Wang Xiang", null, DateTime.Now.AddSeconds(10), TimeSpan.Zero, CacheItemPriority.NotRemovable, null);
Expiração de tempo suave (o cache expirará automaticamente se não for acessado por 10 segundos consecutivos)
HttpContext.Current.Cache.Insert("Nome", "Wang Xiang", null, DateTime.MaxValue, TimeSpan.FromSeconds(10));
Estratégia de atualização de cache
if (HttpContext.Current.Cache["UserCacheList"]!=nulo)
{
ht = (Hashtable)HttpContext.Current.Cache["UserCacheList"];
ht.Add(uId, HttpContext.Current.Cache["Usuário" + uId]);
}
outro
{
ht.Add(uId, HttpContext.Current.Cache["Usuário" + uId]);
//HttpContext.Current.Cache["UserCacheList"] = ht;
HttpContext.Current.Cache.Insert("UserCacheList", ht, null, DateTime.MaxValue, TimeSpan.Zero, CacheItemPriority.NotRemovable, null);
}