Il messaggio di errore "Viewstate non valido per la pagina" non fornisce informazioni sufficienti per risolvere il problema

Traduzione articoli Traduzione articoli
Identificativo articolo: 832183 - Visualizza i prodotti a cui si riferisce l?articolo.
Per la una versione di Microsoft .NET Framework 1.1 di questo articolo, vedere 831150.


importante NON INSTALL in questo aggiornamento rapido (hotfix) in un computer che si trova in un ambiente Web farm o in un ambiente cluster a meno che non si installa questo aggiornamento rapido (hotfix) in tutti i computer nell'ambiente oppure non avere installato l'hotfix 323744 in tutti gli altri computer nell'ambiente.

Per ulteriori informazioni, vedere "Description of the View State MAC feature" nella sezione "Ulteriori informazioni".
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

PoichÚ lo stato di visualizzazione dati viene memorizzato in un campo nascosto in una pagina Web, Ŕ esposto a manipolazioni dopo dati trasferimento tra il client e il server. Per rendere pi¨ sicura la funzionalitÓ dello stato di visualizzazione, di Microsoft ASP.NET convalidare i dati dello stato di visualizzazione per verificare che proviene la pagina corretta.

Se ASP.NET non pu˛ convalidare i dati relativi allo stato visualizzazione, ASP.NET restituisce un messaggio al browser client che indica che "il viewstate non valido per questa pagina e probabilmente danneggiato." Tuttavia, il messaggio non viene descritto perchÚ i dati di ViewState non validi.

Per ulteriori informazioni sulla funzionalitÓ dello stato di visualizzazione, vedere "" nella sezione "Ulteriori informazioni" sezione.

Risoluzione

Sebbene in questo articolo offre un aggiornamento rapido, questo aggiornamento rapido (hotfix) non viene risolto gli errori di stato di visualizzazione dei dati . Questo aggiornamento rapido (hotfix) solo informazioni aggiuntive per la risoluzione dello stato di visualizzazione errori di dati.

Un hotfix supportato Ŕ disponibile da Microsoft, tuttavia Ŕ destinato esclusivamente per risolvere il problema descritto in questo articolo. Utilizzarla solo nei sistemi in cui si verifica questo problema specifico. Questo aggiornamento rapido (hotfix) potrebbe essere eseguiti ulteriori test. Se non si Ŕ notevolmente interessati da questo problema, si consiglia pertanto di attendere il rilascio del prossimo service pack di Microsoft .NET Framework 1.0 che contiene questo aggiornamento rapido (hotfix).

Per risolvere immediatamente questo problema, contattare il servizio supporto tecnico clienti Microsoft per ottenere l'hotfix. Per un elenco completo di numeri di telefono del servizio supporto tecnico clienti Microsoft e per informazioni sui costi dell'assistenza, visitare il seguente sito Web Microsoft:
http://support.microsoft.com/contactus/?ws=support
Nota in casi particolari, le spese normalmente addebitate per le chiamate al Servizio Supporto Tecnico Clienti Microsoft potrebbero essere annullate qualora un addetto del Supporto Tecnico Microsoft dovesse determinare che uno specifico aggiornamento risolverÓ il problema. I normali costi del Servizio Supporto Tecnico Clienti verranno applicati per eventuali ulteriori domande e problemi che non dovessero rientrare nello specifico aggiornamento in questione.

La versione di lingua inglese di questo aggiornamento rapido (hotfix) presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e le ore per questi file sono indicati in UTC (Coordinated Universal Time). Quando si visualizzano le informazioni sul file, viene convertito in ora locale. Per calcolare la differenza tra ora UTC e l'ora locale, utilizzare la scheda fuso orario dello strumento Data e ora del Pannello di controllo.
   Date         Time   Version       Size       File name
   --------------------------------------------------------------
   11-Dec-2003  07:13  1.0.3705.478    200,704  Aspnet_isapi.dll
   11-Dec-2003  07:06                    4,169  Aspnet_perf.h
   11-Dec-2003  07:14                  513,302  Aspnet_perf.ini
   11-Dec-2003  07:14                  510,714  Aspnet_perf2.ini
   11-Dec-2003  07:14  1.0.3705.478     24,576  Aspnet_regiis.exe
   11-Dec-2003  07:14  1.0.3705.478     28,672  Aspnet_wp.exe
   11-Dec-2003  06:27  1.0.3705.478     69,632  Corperfmonext.dll
   17-Jun-2003  21:43                   16,597  Installpersistsqlstate.sql
   17-Jun-2003  21:43                   17,331  Installsqlstate.sql
   09-Sep-2003  00:28                   17,807  Installsqlstatetemplate.sql
   11-Dec-2003  06:25  1.0.3705.478    303,104  Mscorjit.dll
   11-Dec-2003  23:48  1.0.3705.478  1,953,792  Mscorlib.dll
   11-Dec-2003  06:18                   10,284  Mscorlib.ldo
   11-Dec-2003  06:26  1.0.3705.478  2,273,280  Mscorsvr.dll
   11-Dec-2003  06:26  1.0.3705.478  2,269,184  Mscorwks.dll
   11-Dec-2003  07:10  1.0.3705.478     20,480  Perfcounter.dll
   23-Aug-2002  02:23                       15  Smartnav.htm
   30-Jul-2003  00:04                    8,728  Smartnav.js
   11-Dec-2003  23:48  1.0.3705.478  1,179,648  System.data.dll
   11-Dec-2003  23:48  1.0.3705.478  1,695,744  System.design.dll
   11-Dec-2003  23:48  1.0.3705.478  1,175,552  System.dll
   11-Dec-2003  23:48  1.0.3705.478    241,664  System.messaging.dll
   11-Dec-2003  23:48  1.0.3705.478    311,296  System.runtime.remoting.dll
   11-Dec-2003  23:49  1.0.3705.478    131,072  System.runtime.serialization.formatters.soap.dll
   11-Dec-2003  23:48  1.0.3705.478  1,200,128  System.web.dll
   11-Dec-2003  23:48  1.0.3705.478    507,904  System.web.services.dll
   11-Dec-2003  23:50  1.0.3705.478  1,994,752  System.windows.forms.dll
   11-Dec-2003  07:20                   16,632  System.windows.forms.ldo
   11-Dec-2003  07:15  1.0.3705.478     57,344  System.windows.forms.tlb
   11-Dec-2003  23:50  1.0.3705.478  1,302,528  System.xml.dll
   11-Dec-2003  23:47  1.0.3705.478     32,768  Tlbimp.exe
   17-Jun-2003  21:43                    1,419  Uninstallpersistsqlstate.sql
   09-Sep-2003  00:28                    2,119  Uninstallsqlstatetemplate.sql
   11-Dec-2003  23:47  1.0.3705.478     65,536  Wsdl.exe

Dettagli di hotfix

Questo aggiornamento rapido (hotfix) provoca la contengono ulteriori informazioni dei messaggi di errore dello stato di visualizzazione. Dopo avere applicato questo aggiornamento rapido (hotfix), il titolo di messaggio di errore di ViewState Ŕ stato diventa "Impossibile convalida dati". Sebbene il nuovo formato messaggio di errore non Ŕ descritto esattamente ci˛ che il problema Ŕ, fornisce ulteriori informazioni dal formato messaggio precedente.

Nota Per ottenere ulteriori informazioni sullo stato dello stato di visualizzazione del dati, Ŕ possibile eseguire le informazioni di stato di visualizzazione viene visualizzato il messaggio di errore tramite un decodificatore di terze parti dello stato di visualizzazione.

Questo aggiornamento rapido (hotfix) consente di imposta la proprietÓ InnerException sull'oggetto HttpException affinchÚ sia possibile utilizzare il metodo Application_Error per registrare l'eccezione sottostante. Assicurarsi che in modo ricorsivo Ŕ accedere a tutti gli errori di proprietÓ InnerException .

Questo hotfix aggiunge le seguenti informazioni specifiche relative al client il messaggio di errore per gli errori dello stato di visualizzazione:
  • Indirizzo IP
  • Numero di porta
  • Agente utente
  • Valore di ViewState
  • HTTP-Referer
  • Percorso della pagina richiesta
Se l'errore si verifica mentre ASP.NET verifica lo stato di visualizzazione codice di autenticazione messaggio (MAC), questo aggiornamento rapido (hotfix) aggiunge un messaggio nell'analisi dello stack viene chiesto di verificare le impostazioni di <machinekey>. Il messaggio di errore viene anche note che Ŕ possibile solo registrare i dati i ViewState nuovamente alla stessa pagina.

Se l'errore si verifica durante la deserializzazione, questo aggiornamento rapido (hotfix) aggiunge il token LosFormater, il token _deserializationData e la posizione in cui si Ŕ verificato l'errore al messaggio di errore.

Nella maggior parte dei casi, se lo stato di visualizzazione dati sono stati troncati, lo stato di visualizzazione di funzionalitÓ verrÓ si verifichino un errore FormatException nel metodo FromBase64String e verrÓ visualizzato il seguente messaggio di errore:
Lunghezza non valida per una matrice di caratteri base 64
Tuttavia, se i dati di stato di visualizzazione sono stati troncati e sono ancora con codifica base64, l'errore verificherÓ pi¨ avanti nel codice.

Messaggio di errore sullo stato di visualizzazione prima di installare questo aggiornamento rapido (hotfix)

Errore del server in ' / ViewState ' applicazione.
--------------------------------------------------------------------------------
Il viewstate non valido per questa pagina e potrebbe essere danneggiato.
Descrizione: Si Ŕ verificata un'eccezione non gestita durante l'esecuzione della richiesta web corrente. Eseguire l'analisi dello stack per ulteriori informazioni sull'errore e in cui ha avuto origine nel codice.

Dettagli eccezione: System.Web.HttpException: il viewstate non valido per questa pagina e potrebbe essere danneggiato.

Origine errore:

Durante l'esecuzione della richiesta web corrente Ŕ stata generata un'eccezione non gestita. Informazioni sulla posizione dell'eccezione e origine possono essere identificate utilizzando l'analisi dello stack dell'eccezione riportata di seguito.

Analisi stack:

[HttpException (0 x 80004005): il viewstate non valido per questa pagina e potrebbe essere danneggiato.]
System.Web.UI.Page.LoadPageStateFromPersistenceMedium() +151
System.Web.UI.Page.LoadPageViewState() +18
System.Web.UI.Page.ProcessRequestMain() +423

Messaggio di errore sullo stato di visualizzazione dopo l'installazione di questo aggiornamento rapido (hotfix)

Errore del server in ' / ViewState ' applicazione.
--------------------------------------------------------------------------------

Impossibile convalidare i dati.
Descrizione: Si Ŕ verificata un'eccezione non gestita durante l'esecuzione della richiesta web corrente. Eseguire l'analisi dello stack per ulteriori informazioni sull'errore e in cui ha avuto origine nel codice.

Dettagli eccezione: System.Web.HttpException: Impossibile convalidare i dati.

Origine errore:

Durante l'esecuzione della richiesta web corrente Ŕ stata generata un'eccezione non gestita. Informazioni sulla posizione dell'eccezione e origine possono essere identificate utilizzando l'analisi dello stack dell'eccezione riportata di seguito.

Analisi stack:

[HttpException (0 x 80004005): Impossibile convalidare i dati.]
System.Web.Configuration.MachineKey.GetDecodedData(Byte[] buf, String strModifier) +866
System.Web.UI.LosFormatter.Deserialize (input String) +44

[HttpException (0 x 80004005): l'autenticazione di viewstate non riuscita. 1) Se si tratta di un cluster, modificare la configurazione di <machinekey> in modo che tutti i server di utilizzare lo stesso validationKey e algoritmo di convalida. Impossibile utilizzare AutoGenerate in un cluster. ViewState 2) pu˛ essere annotato solo alla pagina stessa. 3) Il viewstate per questa pagina potrebbe essere danneggiato.]
System.Web.UI.LosFormatter.Deserialize (input String) +102
System.Web.UI.Page.LoadPageStateFromPersistenceMedium() +101

[HttpException (0 x 80004005): il viewstate non valido per questa pagina e potrebbe essere danneggiato.
Client IP: 127.0.0.1
Porta: 1095
Agente utente: Mozilla/4.0 (compatibile; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)
ViewState: dDwzNDM3NTkwMzg7dDw7bDxpPDEPGk8MT47PjtsPHQ8QDA8cDxwPGw8RGF0YUt
HTTP-Referer: http://localhost/Connect2Access/WebForm1.aspx
Percorso: /connect2access/webform1.aspx.]
System.Web.UI.Page.LoadPageStateFromPersistenceMedium() +435
System.Web.UI.Page.LoadPageViewState() +16
System.Web.UI.Page.ProcessRequestMain() +439
Nota Il valore di ViewState in questo messaggio di errore di esempio Ŕ stato troncato al contesto di questo articolo.

Status

Microsoft ha confermato che questo problema riguarda i prodotti sono elencati nella sezione "Si applica a".

Informazioni

Per ulteriori informazioni sulla terminologia utilizzata per descrivere gli aggiornamenti dei prodotti Microsoft, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
824684Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft

Descrizione della funzionalitÓ dello stato di visualizzazione

ASP Ŕ senza informazioni sullo stato . Ogni volta che un'applicazione effettua un percorso di andata e ritorno dal server al client, i dati non viene salvati intrinsecamente. Ogni volta che una pagina Web Ŕ inviata al server, la pagina viene ricreata. Questo comportamento causa tutte le informazioni che Ŕ associate con la pagina e con i controlli nella pagina, per essere attive per ogni percorso di andata e ritorno. Ad esempio, anche in se un informazioni di tipi di utente in una casella di testo, tali informazioni viene perso nel percorso di andata dal browser o dalla periferica client al server.

ASP.NET Ŕ anche senza informazioni sullo stato. Tuttavia, ASP.NET dispone di una nuova funzionalitÓ, ViewState, che consente di mantenere i dati tra i round trip da e verso il server. Stato di visualizzazione consente di mantenere automaticamente valori delle proprietÓ di pagina e i valori di tutti i controlli sulla pagina, tra i percorsi di andata e ritorno. I dati di stato di visualizzazione vengono mantenuti come campo nascosto nella pagina.

╚ possibile utilizzare la funzionalitÓ di ViewState per memorizzare i valori specifici della pagina della propria tra i percorsi di andata e ritorno quando la pagina viene rinviata a se stessa. Ad esempio, se l'applicazione conserva le informazioni specifiche dell'utente, Ŕ possibile utilizzare la funzionalitÓ di ViewState per memorizzare queste informazioni specifiche dell'utente. Le informazioni specifiche dell'utente sono informazioni che Ŕ utilizzata nella pagina ma non sia necessariamente Ŕ che una parte di qualsiasi controllo.

back to the "Summary" section

Descrizione della funzionalitÓ MAC dello stato di visualizzazione

Il codice di autenticazione di messaggio di stato di visualizzazione (MAC) Ŕ un tag di autenticazione (noto anche come un checksum ) che viene creato quando si applica una combinazione di autenticazione, insieme con una chiave segreta, a un messaggio. Un codice MAC calcolato viene verificato mediante la stessa chiave. Di conseguenza, un codice MAC pu˛ essere verificato solo dal destinatario previsto. MACs pu˛ essere creato utilizzando varie tecniche di crittografia e algoritmi, ad esempio SHA Secure Hash Algorithm (), il Message Digest 5 (MD5) algoritmo DES (Data Encryption Standard) o.

La funzionalitÓ MAC dello stato di visualizzazione Ŕ progettata per impedire a un client di inviare una richiesta contenente dati dello stato di visualizzazione dannosi. Per impostazione predefinita, la funzionalitÓ MAC dello stato di visualizzazione Ŕ attivata utilizzando il enableViewStateMac = "true" flag nel file Machine.config.

Il modo pi¨ semplice per determinare se il problema riscontrato Ŕ legato quello consiste per disattivare la funzionalitÓ. Per effettuare questa operazione, impostare il flag di enableViewStateMac su false . Se non si verificano non sono pi¨ errori dello stato di visualizzazione, il problema al Mac.

Il codice MAC dello stato di visualizzazione viene applicato in modo diverso in Microsoft .NET Framework 1.0 prima di installata l'hotfix 323744. La correzione di questo articolo viene descritto (aggiornamento rapido (hotfix) 832183) include l'aggiornamento rapido (hotfix) 323744. Se non si installa l'hotfix 323744 - inoltre singolarmente o con l'hotfix 832183 - su tutti i altri computer nell'ambiente, i computer che non dispongono di hotfix 323744 installato verificheranno errori dei dati dello stato di visualizzazione.

Per ulteriori informazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportato di seguito:
323744FIX: "Il viewstate Ŕ valido per la pagina e potrebbe essere danneggiato" messaggio di errore in ASP.NET
328546INFORMAZIONI: Successivo hotfix Service Pack 2 .NET Framework ASP.NET

ProprietÓ

Identificativo articolo: 832183 - Ultima modifica: venerdý 7 aprile 2006 - Revisione: 2.3
Le informazioni in questo articolo si applicano a:
  • Microsoft .NET Framework 1.0
  • Microsoft Visual Studio .NET 2002 Professional Edition
  • Microsoft Visual Studio .NET (2002), Enterprise Architect Edition SP1
  • Microsoft Visual Studio .NET 2002 Enterprise Developer
  • Microsoft Common Language Runtime (included with the .NET Framework) 1.0
  • Microsoft ASP.NET 1.0
Chiavi:á
kbmt kbqfe kbhotfixserver kbvs2002sp1sweep kbstate kbnetframe100presp3fix kbfix kbbug KB832183 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 832183
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com