Mudanças entre as edições de "ERRO: ViewState Inválido"

De LATROMI Manuais
Ir para: navegação, pesquisa
(Solução)
Linha 15: Linha 15:
 
# Acesse o Registro do Windows (Menu Iniciar → Executar → regedit).
 
# Acesse o Registro do Windows (Menu Iniciar → Executar → regedit).
 
# Localiza a chave <code>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem</code>.  
 
# Localiza a chave <code>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem</code>.  
# Informe '''0''' no valor do parâmetro '''NtfsDisableLastAccessUpdate'''.
+
# Informe '''0''' no valor do parâmetro [https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc758569(v=ws.10) NtfsDisableLastAccessUpdate].
 
# Reinicie o Windows.
 
# Reinicie o Windows.
  

Edição das 10h54min de 2 de janeiro de 2019

Problema

Ao utilizar a mesma página por mais de 24 horas sem atualiza-la, o sistema exibe a mensagem “Esta página ficou inativa por muito tempo ou houve alguma mudança no servidor. Por favor, recarregue essa página para continuar.”.

ViewState Inválido

Causa

O sistema utiliza uma lógica otimizada de carregamento do ViewState. As informações são gravadas em arquivos físicos no servidor, ao invés de serem trafegadas entre Cliente x Servidor a cada PostBack. A exclusão destes arquivos é realizada por uma tarefa executada em segundo plano que ocorre de hora em hora, e exclui os arquivos que não horam alterados a mais de 24 horas.

Essa tarefa utiliza como referência a propriedade LastWriteTimeUtc do arquivo. Essa propriedade deveria possuir a data e hora da última alteração do arquivo, porém a atualização dessa propriedade foi desabilitada a partir do Windows Vista por motivos de Performance.

Solução

Para solucionar este problema é necessário habilitar a atualização da propriedade LastWriteTimeUtc no Registro do Windows.

Siga os passos abaixo para habilitar:

  1. Acesse o Registro do Windows (Menu Iniciar → Executar → regedit).
  2. Localiza a chave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem.
  3. Informe 0 no valor do parâmetro NtfsDisableLastAccessUpdate.
  4. Reinicie o Windows.

ou

Execute o comando fsutil behavior set disablelastaccess 0 com privilégios de administrador.