Durante el desarrollo, a menudo nos encontramos con una página principal que muestra datos en listas en la paginación y proporciona una variedad de condiciones de consulta. Los registros de resultados de la consulta se pueden modificar, eliminar y realizar otras operaciones. Una vez completada la página de operación, es necesario volver a ella. la página de consulta En este momento, las condiciones de consulta y la página actual a menudo se pierden. Podemos resolver el problema de perder las condiciones de la página de consulta y la información de paginación guardando el estado de la página.
Generalmente anulamos el objeto de anulación protegido LoadPageStateFromPersistenceMedium() en la clase Página,
anulación protegida void SavePageStateToPersistenceMedium(estado del objeto),
anulación protegida void RaisePostBackEvent(IPostBackEventHandler sourceControl, string eventArgument),
anulación protegida System.Collections.Specialized.NameValueCollection DeterminePostBackMode(), cuatro métodos para resolver. Sin embargo, las personas generalmente juzgan que al restaurar la página en la reescritura de RaisePostBackEvent, no ejecutan base.RaisePostBackEvent(sourceControl, eventArgument); Como los resultados de la modificación no se actualizan, los registros de eliminación no se actualizan. Aunque esto mejora el rendimiento, la actualización de datos no puede resolverlo. Para evitar este problema, la forma es muy simple, es decir, no reescribir RaisePostBackEvent y dejar que la página de consulta vuelva a ejecutar el último evento de devolución cuando se restaure el estado, por lo que. que los resultados se actualicen. El valor de la condición de la página y el índice de la página actual se conservan.