Thursday, 14 de October de 2010
Olá Pessoal,
O ASP.Net oferece um esquema de Cache bastante interessante que podemos utilizar em nossos projetos, permitindo uma maior escalabilidade de nossas aplicações e um menor uso do banco de dados. Veja mais em ASP.NET Caching.
Temos a classe Cache e ainda a opção de "cachear" o resultado (ou output) de uma página web, definindo também o tempo que ela vai valer, neste caso usando a tag OutputCache.
[off-topic]Eu já vi isto também no PHP, com o Smarty, simplesmente maravilhoso :-)[/off-topic]
Mas o que quero explicar neste artigo é que na maioria das vezes vamos adicionando caches e mais caches na página e se você não se organizar, vai chegar um ponto em que nada mais vai ficar atualizado, porque estarão no cache.
Então, o que fazer nestes casos?
1 - Ou você se policia para que em algum momento exclua o cache, utilizando:
System.Web.HttpContext.Current.Cache.Remove("chave");
2 - Ou você pode criar uma página que limpa todo o cache de sua aplicação, automaticamente.
string currentKey= "";
System.Collections.IDictionaryEnumerator cacheContents = System.Web.HttpContext.Current.Cache.GetEnumerator ();
while (cacheContents.MoveNext()) {
currentKey = cacheContents.Key.ToString();
System.Web.HttpContext.Current.Cache.Remove(curren tKey);
}
Bom, as duas opções podem ser consideradas, mas a que mais recomendo é a primeira, pois a segunda tem que ser utilizada apenas em último caso, quando não há outra alternativa.
A grosso modo, é o modo "gambiarra" de resolver hehehe
Fica a dica pessoal ;-)
Nenhum comentário, seja o primeiro a comentar.
Para adicionar um comentário você deve efetuar o
login