<< Click to Display Table of Contents >> Validation of viewstate MAC failed (machineKey) |
![]() ![]() ![]() |
Erro
Motivo
Este erro ocorre geralmente quando a página fica aberta e depois de um longo período de tempo clicamos em algo que aciona o submit do form.
Como o ViewState contém dados criptografados e geralmente no web.config a machineKey está com o validationKey="AutoGenerate".
E de tempos em tempos o .Net muda estas chaves, os dados criptografados do ViewState não podem mais ser descriptografados e gera este erro.
Não sei diser de quanto em quanto tempo essa chave muda, em alguns casos, a cada dia, em outros, em poucos minutos..
Solução
Para resolver o erro "Validation of viewstate MAC failed", é basicamente simples.
Acesse este site http://aspnetresources.com/tools/machineKey
Esta ferramenta permite a você gerar chaves aleatórias para validação do ViewState, após gerar estas chaves, copie e adicione (ou altere, caso já exista) no web.config.
Exemplo:
<?xml version="1.0"?>
<configuration>
<system.web>
<machineKey validationKey="668E7053A67FB31446DBEC83B3F57AD0252F9671BD313D41FBD571FD0B6C599252FDCBE8E3358CA7FC79F2AF4AC4E2DF4C4E2A78D77DB582F3D0739E2AF1C443"
decryptionKey="6F376C11CC7A869CF357C3A3A8DF33CBCA3DB23818C7E816C0E62C36EAC56B1B" validation="SHA1" decryption="AES"/>
</configuration>
Assim a machineKey ficará fixa e este erro não acontecerá mais.
Fonte
•http://cbsa.com.br/post/validation-of-viewstate-mac-failed-machinekey.aspx