¿Cómo usar el almacenamiento en caché en ASP.NET Web API?
Estoy usando ASP.NET MVC 4 con API WEB
Tengo la siguiente acción, en la acción que se muestra a continuación, mi método de servicio realiza una llamada db aDoMagic()
Método y devuelve un valor entero que luego estoy usando en cada página, esta acción se llama usando una llamada ajax.
A continuación se muestra mi acción de la API WEB:
[OutputCache(Duration = 86400, VaryByParam = "none")]
[ActionName("GetMyMagicNumber")]
public int GetMyMagicNumber()
{
if (WebSecurity.IsAuthenticated)
{
var revenue = _magicService.DoMagic();
return revenue;
}
return 0;
}
Mi pregunta: He intentado usar[OutputCache(Duration = 86400, VaryByParam = "none")]
y exceptué que solo la primera vez que se realice la llamada a la base de datos y la siguiente solicitud posterior a esta acción me devolverá el valor almacenado en caché, pero esto no está sucediendo.
Se vuelve a realizar una llamada a db, la llamada a db lleva tiempo, ¿cómo puedo hacer que esto funcione?