Quiero una manera fácil de borrar las páginas almacenadas en caché en mi sitio web asp.net-mvc.Puede forzar una eliminación de (página y vista parcial) OutputCache en asp.net-mvc
Tengo costosas operaciones de base de datos, así que a menudo utilizo el almacenamiento de salida para que el sitio funcione más rápido. Tengo el código que se parece a esto:
[OutputCache(Duration = 30000)]
public ActionResult Index()
{
return View();
}
[OutputCache(Duration = 30000, VaryByParam = "*")]
public ActionResult GetData(MyParams myParams)
{
return PartialView("MyView", GetVM(myParams));
}
Hay ciertos momentos (cuando las cosas van mal) cuando quiero explicitally clara esta caché (independientemente de la duración de la caché existente)
es allí de todos modos para la plena y la página parcial de almacenamiento de salida para eliminar la página en caché y ejecutar a través del código completo?
NOTA: veo que esta cuestión está ya pidió en general alrededor de asp.net como here pero no veo una solución específica asp.net-mvc
he probado esto, pero no parece a trabajar:
public ActionResult ClearCache()
{
this.HttpContext.Response.RemoveOutputCacheItem("/MyController/Index.aspx");
this.HttpContext.Response.RemoveOutputCacheItem("/MyController/MyView.ascx");
}
esa respuesta no parece enfocarse en la solución basada en MVC. Creo que hay una manera mejor que especificar las extensiones ".aspx" para borrar mi caché. . – leora
Si mira más abajo en la respuesta, encontrará algunos enlaces e ideas en la segunda y tercera respuestas centradas en MVC. –
No funciona para MVC acciones por lo que puedo decir –