Remover o Cache de respostas JSON com Serviços WCF

Pessoal, hoje o post é curto.

O Riba, colega de trabalho, precisou remover o cache de um serviço WCF que retorna dados em JSON, pois os dados mudavam e era necessário uma atualização sem recarregar a página.

Chamar o serviço assíncrono não adiantava, porque o output por comportamento padrão, estava em cache. Em termos de performance, tudo bem, mas tem casos que precisamos recuperar sempre os dados atualizados.

Para resolver o problema, vamos informar que não será necessário guardar o cache.

1. Fazer referência para System.Web:

using System.Web;

2. Adicionar as chamadas dentro do método que retornar o objeto JSON.

HttpContext.Current.Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
HttpContext.Current.Response.Cache.SetNoStore();

Veja a lista de HTTP headers

abraços,

Comentário fechado.