Lo anterior está bien si sabe para qué páginas quiere borrar el caché. En mi caso (ASP.NET MVC) hice referencia a los mismos datos de todas partes. Por lo tanto, cuando hice [guardar] quise borrar todo el sitio de caché. Esto es lo que funcionó para mí: http://aspalliance.com/668
Esto se hace en el contexto de un filtro OnActionExecuting. Lo mismo podría hacerse anulando OnActionExecuting en un BaseController o algo así.
HttpContextBase httpContext = filterContext.HttpContext;
httpContext.Response.AddCacheItemDependency("Pages");
Configuración:
protected void Application_Start()
{
HttpRuntime.Cache.Insert("Pages", DateTime.Now);
}
pequeño ajuste: tengo un ayudante que añade "flash" (mensajes Los mensajes de error, mensajes de éxito - "Este artículo ha sido guardado con éxito", etc.). Para evitar que aparezca el mensaje flash en cada GET subsiguiente, tuve que invalidar después de escribir el mensaje flash.
limpieza de la caché:
HttpRuntime.Cache.Insert("Pages", DateTime.Now);
Espero que esto ayude.
¿Alguien sabe si algo como esto está disponible para ASP clásico? – Brettski
No creo que el almacenamiento en caché esté disponible en ASP, así que no lo siento. – GateKiller
Esto borra todos los cachés para cada params para esa página. – Salim