Me he dado cuenta de que cuando Response.Redirect a una página .aspx, a veces muestra una página en caché en lugar de ejecutar la página y extraer datos recientes de la base de datos.¿Por qué Response.Redirect a veces extrae de la memoria caché?
No estoy utilizando el caché de resultados ni nada especial en .Net aquí: este es un CRM, y el almacenamiento en caché se está realizando en el cliente o, quizás más probablemente, automáticamente en IIS.
Nunca hay una cadena de consulta involucrada, por cierto. Estoy pasando una llave a través de la sesión. Sé que si utilizara la cadena de consulta probablemente desviaría parcialmente el problema de la memoria caché, pero no es una opción en este caso, y de todos modos lo que realmente quiero es una comprensión más profunda de lo que está sucediendo.
Hice un poco de investigación, y algunas personas solucionan esto utilizando Server.Transfer (que en realidad se comporta de manera diferente a Response.Redirect y algunos de los detalles no siempre son deseables), y algunas otras personas dicen que configure Response. Cache.SetCacheability (HttpCacheability.NoCache) en la página donde quiero evitar el almacenamiento en caché.
Me gustaría obtener una mejor comprensión de lo que está sucediendo aquí, y posiblemente una mejor práctica, por un lado, pensé que las páginas .aspx siempre estaban marcadas para evitar el almacenamiento en caché. ¿Derecha?
¿Alguna idea?
@Brian: Lo haría si estuviera manejando botones, haga clic en el lado del servidor. – AnthonyWJones
+1: nota rápida: agregué esto antes de response.redirect y no hice ninguna mierda, tuve que agregar esto a la página_carga de la página, no quiero que se guarde en la memoria caché, lo cual tiene sentido ¿no? – lurscher