Buenos días.
Os pongo en situación del problema que tengo.
Tengo una aplcación web con controles devexpress (ajax). La pantalla principal es la típica pantalla de búsqueda; una serie de campos editables para buscar en la db y un grid de resultados (aspxgridview de devexpress). Cuando se realiza la búsqueda obviamente no se produce una recarga de página, la petición a servidor se realiza mediante callbacks y solo se refrescan los datos del grid. El componente devexpres utilizado permite ordenación de campos, agrupación, paginación, etc.
La operativa seguida es la siguiente:
Realizo la búsqueda -> Los resultados se cargan correctamente en el grid -> Accedo a uno de los registros del grid haciendo click en el, lo que me lleva a un .aspx distinto.
Pues bien, cuando desde este .aspx intento volver atrás tengo un gran problema, y es que tengo que cargar de nuevo el grid desde la DB, ya que con un history back desde la página de detalles del registro me devuelve a la página anterior, pero con la consulta sin realizar, por lo que teniendo los filtros en sesión, los recupero y lanzo de nuevo la búsqueda. Como imagináis, cuando la búsqueda es pesada, esto es un grave problema...por no mencionar que si he realizado previamente algún tipo de ordenación, agrupación o cambio de página en el grid, estos datos se pierden (esto se puede solucionar guardándome estos parámetros en sesión también).
Guardar el resultado de la consulta en sesión resulta inviable, pues el peso de los resultados que devuelve se puede ir a los 8 megas facilmente...
Se trata de una aplicación que trabaja con un volumen de datos grande y debe soportar también varios cientos de usuarios concurrentes.
¿Alguna solución?
Gracias y un saludo.