Durante o desenvolvimento, muitas vezes encontramos uma página principal que exibe dados em listas na paginação e fornece uma variedade de condições de consulta. Os registros de resultados da consulta podem ser modificados, excluídos e outras operações. Após a conclusão da página de operação, ela precisa retornar. a página de consulta. Neste momento, as condições de consulta e a página atual são frequentemente perdidas. Podemos resolver o problema de perda das condições da página de consulta e das informações de paginação salvando o status da página.
Geralmente substituímos o objeto de substituição protegido LoadPageStateFromPersistenceMedium() na classe Page,
substituição protegida void SavePageStateToPersistenceMedium(estado do objeto),
substituição protegida void RaisePostBackEvent(IPostBackEventHandler sourceControl, string eventArgument),
substituição protegida System.Collections.Specialized.NameValueCollection DeterminePostBackMode(), quatro métodos para resolver. No entanto, as pessoas geralmente julgam que ao restaurar a página na reescrita de RaisePostBackEvent, elas não executam base.RaisePostBackEvent(sourceControl, eventArgument); como os resultados da modificação não são atualizados, os registros de exclusão não são atualizados. Embora isso melhore o desempenho, a atualização de dados não pode resolvê-lo. Para evitar esse problema, o caminho é muito simples, ou seja, não reescreva o RaisePostBackEvent e deixe a página de consulta executar novamente o último evento de postback quando o estado for restaurado. que os resultados são atualizados. O valor da condição da página e o índice da página atual são preservados.