2009-04-22 5 views
0

Je reçois une erreur de suivi. La validation de l'instruction MAC viewstate a échoué. Si cette application est hébergée par une batterie ou un cluster Web, assurez-vous que la configuration spécifie le même algorithme de validation et de validation. AutoGenerate ne peut pas être utilisé dans un cluster. Description: Une exception non gérée s'est produite lors de l'exécution de la requête Web en cours. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.Erreur lors du clic sur le bouton de liaison dans MasterPage

Détails de l'exception: System.Web.HttpException: échec de la validation du MAC viewstate. Si cette application est hébergée par une batterie ou un cluster Web, assurez-vous que la configuration spécifie le même algorithme de validation et de validation. AutoGenerate ne peut pas être utilisé dans un cluster.

Source Erreur:

Le code source qui a généré cette exception non gérée ne peut être consulté qu'une fois compilé en mode débogage. Pour activer cela, veuillez suivre l'une des étapes ci-dessous, puis demander l'URL:

  1. Ajoutez une directive "Debug = true" en haut du fichier qui a généré l'erreur. Exemple:

ou:

2) Ajouter la section suivante dans le fichier de configuration de votre application:

Notez que cette deuxième méthode, tous les fichiers dans une application donnée à compiler en mode débogage. La première technique entraînera uniquement la compilation de ce fichier particulier en mode débogage. Important: L'exécution d'applications en mode débogage entraîne une surcharge de mémoire/performance. Vous devez vous assurer qu'une application a désactivé le débogage avant de déployer dans le scénario de production.

Trace de pile:

[HttpException (0x80004005):. Impossible de valider les données] System.Web.Configuration.MachineKeySection.GetDecodedData (byte [] buf, modificateur de byte [], Int32 début, la longueur Int32, Int32 & dataLength) 2546780 System.Web.UI.ObjectStateFormatter.Deserialize (String inputString) +214

[ViewStateException: non valide viewstate. client IP: 127.0.0.1 Port: User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1, InfoPath.2, .NET CLR 2.0.50727) ViewState: 9xQG6dYJ5zq2jCqMiucYRNTojwFlEGYjCH2OQX2PsmFzIZhHtD11AD5JBQmMuoIw105QqG46Ew4o8mVXLBG + T9hl2qqjTTQ/jlivQHaLBjR/cojc5VTk2aZUCmDSZBt/z1yzV8kJLFYrNmIkKAztL + eeZho/zZmCVfRAIcCyhIc = Referer: http://localhost:1124/Login/ApproveAppointments.aspx Chemin: /Login/ApproveAppointments.aspx]

[HttpException (0x80004005): validation des viewstate MAC a échoué. Si cette application est hébergée par une batterie ou un cluster Web, assurez-vous que la configuration spécifie le même algorithme de validation et de validation. AutoGenerate ne peut pas être utilisé dans un cluster.] System.Web.UI.ViewStateException.ThrowError (Exception interne, Chaîne persistedState, Chaîne errorPageMessage, Valeur booléenne macValidationError) +116 System.Web.UI.ObjectStateFormatter.Deserialize (String inputString) +251 System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter.Deserialize (String serializedState) 4 System.Web.UI.Util.DeserializeWithAssert (de formatter IStateFormatter, String serializedState) 37 System.Web.UI.HiddenFieldPageStatePersister.Load() 220 System.Web.UI.Page.LoadPageStateFromPersistenceMedium () 83 System.Web.UI.Page.LoadAllState() 35 System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 6953 System.Web.UI.Page.ProcessRequest (Boolean includeStagesBeforeAsyncPoint, Booléen inclure StagesAfterAsyncPoint) +154 System.Web.UI.Page.ProcessRequest() +86 System.Web.UI.Page.ProcessRequestWithNoAssert (Contexte HttpContext) +18 System.Web.UI.Page.ProcessRequest (Contexte HttpContext) +49 ASP.login_approveappointments_aspx.ProcessRequest (HttpContext contexte) 29 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 154 System.Web.HttpApplication.ExecuteStep (étape IExecutionStep, Boolean & completedSynchronously) 64

J'ai essayé le code donné dans Source error.But pourrait ne pas résoudre.Peut-on aider quelqu'un?

Répondre

-1

Assurez-vous d'avoir placé la même clé machine dans le fichier web.configs sur toutes les machines de la grappe, par ex.

<machineKey validationKey="AAABBBCCCDDD111222333444AAABBBCCCDDD111222333444AAABBBCCCDDD111222333444" decryptionKey="AAABBBCCCDDD111222333444" validation="SHA1"/> 
Questions connexes