Validation of viewstate MAC failed

Anche a me è successo di imbattermi in questo errore.

In realtà è una cosa che può succedere solo con determinati webcontrol (GridView, DetailsView, FormView che usano la propretà DataKeyNames).

La motivazione è meglio spiegata qui, ma comunque è dovuta al fatto che questi webcontrol generano automaticamente del codice che richiede il viewstate criptato.

Questo può generare errori nel caso di una pagina che impiega molto tempo a caricarsi (il codice di criptazione è a fondo pagina) e che magari viene utilizzata da un utente "troppo veloce", oppure ancora nel caso di load balancing (tra server o anche solo tra web: quello che viene chiamato "web gardening").

Occorre quindi specificare, a livello di web.config, una machine key fissa (in modo che ne venga utilizzata una per sito e non una per macchina).

Info per generare una machine key qui.

Una buona panoramica del problema qui.

Print | posted @ Monday, March 31, 2008 11:36 AM

Comments on this entry:

Gravatar # re: Validation of viewstate MAC failed
by mgutman at 3/31/2008 10:34 PM

grazie dei link Omar, tuttavia non mi è ancora chiara la faccenda, che necessiterà almeno una mattinata di googling e testing. E come al solito MS non sembra dare molto retta ai poveri developer, che ormai devono essere sempre un pò di puù anche sistemisti. Basta guardare la pagina del Connect dove dicono in pratica "grazie, grazie, ma siamo impegnati con la prossima versione, i bug di adesso non hanno priorità". Dovrebbero chiamarla "Connect with laziness"...
Gravatar # re: Validation of viewstate MAC failed
by Sergio at 4/1/2008 9:29 AM

Omar. Io riscontro il problema in un sito su una sola pagina aspx e solo se uso Internet Explorer. Con Firefox il problema non si presenta. Ho provato ad aggiungere un machineKey ma non e' cambiato nulla. Ma la cosa strana e' che succede solo su una di n pagine di un sito, anche abbastanza semplice.
Mah.
Sergio
Comments have been closed on this topic.