" />

Erreur <%@ Page EnableEventValidation="true" %> [Résolu]

Messages postés
39
Date d'inscription
mardi 20 mai 2003
Dernière intervention
22 février 2006
- - Dernière réponse :  aminbj - 22 oct. 2008 à 09:35
Bonsoir,

Depuis tout à l'heure j'ai cette erreur sur mon projet, je ramène le boulot à la maison parce que j'ai une présentation du projet lundi devant la direction. Mais MALHEUR je tombe sur cette erreur, je commence à peine l'asp.net
pouvez vous m'aider ??
Je travail pour l'instant avec WebMatrix et récemment j'ai installé visual studio 2005 chez moi.

j'imagine que c'est un problème lié au web.config ou machine.config quelqu'un peut m'aider ?? Please

Je vous laisse le message d'erreur que j'ai à l'écran.

Merci ++

Argument de publication ou de rappel non valide. La validation
d'événement est activée via dans la
configuration ou via <%@ Page EnableEventValidation="true" %> dans une
page. Pour des raisons de sécurité, cette fonctionnalité vérifie si les
arguments des événements de publication ou de rappel proviennent du contrôle
serveur qui les a rendus à l'origine. Si les données sont valides et attendues,
utilisez la méthode ClientScriptManager.RegisterForEventValidation afin
d'inscrire les données de publication ou de rappel pour la validation.

Description :
Une exception non gérée s'est produite au moment de l'exécution de la
demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur
l'erreur et son origine dans le code.

Détails de l'exception:
System.ArgumentException: Argument de publication ou de rappel non valide.
La validation d'événement est activée via dans la configuration ou via <%@ Page
EnableEventValidation="true" %> dans une page. Pour des raisons de sécurité,
cette fonctionnalité vérifie si les arguments des événements de publication ou
de rappel proviennent du contrôle serveur qui les a rendus à l'origine. Si les
données sont valides et attendues, utilisez la méthode
ClientScriptManager.RegisterForEventValidation afin d'inscrire les données de
publication ou de rappel pour la validation.
Afficher la suite 

Votre réponse

20/32 réponses

Meilleure réponse
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
3
Merci
Oui cette propriété est spécifique a .net 2.0

par défaut l'installation du framework 2.0 ne change pas la configuration des sites existant. Pour changer la version du framework dans lequel tourne le site, il faut aller dans le gestionaire de site web IIS, puis tu as un nouvel onglet dans les propriétés du repertoires virtuels qui permet justement de changer la version du framework pour le site en cours ...

je ne vois pas ce que t'appelle un switcher ? il n'est pas possible de faire du .net 1.0 avec VS2005 ! ou alors VS2005 sera completement inutile ...


<HR>
Cyril - MVS - MCP ASP

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 105 internautes ce mois-ci

Commenter la réponse de jesusonline
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Dernière intervention
15 septembre 2009
1
Merci
Exact, le 2ème paramètre n'est pas bon  Le problème, c'est que je ne vois pas comment le récupérer dans ma page puisque je ne sais pas à l'avance quelle va être sa valeur

<hr />
@+  
Commenter la réponse de cs_drahcir
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
Bonsoir,

tu as cette erreur en faisant quoi ? tu utilises quelle version du framework ?

t'as essayer en mettant enableEventValidation="false" dans ta directive de page ? (tout en haut du fichier aspx) je te le conseil pas car si t'as une erreur c'est pas normal ...


<HR>
Cyril - MVS - MCP ASP<
Commenter la réponse de jesusonline
Messages postés
39
Date d'inscription
mardi 20 mai 2003
Dernière intervention
22 février 2006
0
Merci
Salut Cyril,

j'ai le framework 1.1, mais récemment j'ai installé visual 2005 donc il m'a fallu installer le 2.0.

ensuite je sais pas quel framework ca utilise, j'imagine que ca doit prendre la dernière version, il me semble qu'il existe des switcher, mais j'ai jamais utilisé.

Je suis complètement débutant, pourrais-tu m'expliquer à quoi sert cette valeur ? il me semble que dans toutes mes pages je n'ai pas cette directive.
Commenter la réponse de babybutt
Messages postés
39
Date d'inscription
mardi 20 mai 2003
Dernière intervention
22 février 2006
0
Merci
Bon Cyril,
je viens de regarder dans la MSDN effectivement une propriété spécifique au framework 2.0
par contre je sais pas encore m'en servir correctement dans le cas où je passerais au framework 2.0.

Sinon dans l'immédiat est ce que quelqu'un connait un framework switcher ?
j'ai utilisé celui de Denis Bauer mais il me plante au nez...
Commenter la réponse de babybutt
Messages postés
39
Date d'inscription
mardi 20 mai 2003
Dernière intervention
22 février 2006
0
Merci
Non en fait je développe en ce moment avec Webmatrix, sur mon poste. Au bureau le server n'est pas encore arrivé. Mais la direction veut tout de même une présentation et des résultats. Le fait est que pour l'instant, on a pas encore décidé quel framework utilisé.
Sur mon poste à la maison j'ai le framework 1.1 et je voulais essayer VS 2005 c'est pour ca que je traine aujourd'hui cette erreur.

Enfin bon merci beaucoup.
Commenter la réponse de babybutt
Messages postés
2
Date d'inscription
samedi 7 février 2004
Dernière intervention
23 février 2006
0
Merci
J'ai actuellement cette erreur alors que je suis en train de développer en .NET 1.1.4 avec Visual Studio 2003. Mais cette erreur ne se produit que lorsque j'utilise l'application Web avec un serveur Apache En effet, si j'utilise IIS 6, la même application ne me renvoie pas d'erreur.

J'ai remarqué que cette erreur ne se produit, aussi, que depuis que j'ai installé .NET 2 en sus des autres versions sur mon serveur. Je suppose donc a priori que ma configuration d'Apache n'est pas adéquate, ou alors que mod_aspdotnet a un bogue... Je vais voir, mais ce n'est pas une priorité pour moi que cette application fonctionne avec Apache. C'était jsute pour voir... Mais si quelqu'un avait une piste sur la nature de cette erreur dans ces conditions, j'aimerais bien être au courant.
Commenter la réponse de Claude Pelletier
Messages postés
2
Date d'inscription
samedi 7 février 2004
Dernière intervention
23 février 2006
0
Merci
Bon, j'ai trouvé comment forcer Apache à se servir de .NET 1.1.4322 quand .NET 2 est installé sur le même serveur...
Le fichier Web.config doit ressembler à ça :


<configuration>

<appSettings>
<clear/>


<startup>
<supportedRuntime version="v1.1.4322" />

<requiredRuntime version="v1.1.4322" />
</startup>

<system.web>

<!-- compilation, pages, customErrors, authentication, etc. -->

<system.web>

</configuration>
Commenter la réponse de Claude Pelletier
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Dernière intervention
15 septembre 2009
0
Merci
Salut,


je ne sais pas si tu as résolu ton problème, mais j'ai le même message d'erreur.


Dans mon cas, il survient lorsque je simule un click sur un contrôle depuis une fonction javascript en faisant un doPostBack().




J'essaie d'utiliser "RegisterForEventValidation", mais je ne sais pas comment faire. Si tu as trouvé, ça serait sympa de m'en faire profiter

Merci




 





<hr />

@+  
Commenter la réponse de cs_drahcir
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
de mémoire :

RegisterForEventValidation(control, eventArgument) si tu appelles ta méthodes comme ca __DoPostBack('blabla', 'monArgument');

il faut faire un RegisterForEventValidation(blabla, "monArgument");

<hr />Cyril - MVS - MCP
Commenter la réponse de jesusonline
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Dernière intervention
15 septembre 2009
0
Merci
merci pour cette réponse. Mais où dois-je le placer?

<hr />
@+  
Commenter la réponse de cs_drahcir
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
Dans le PreRender de ton contrôle ou au moins dans un prerender de quelque chose :p

<hr />Cyril - MVS - MCP
Commenter la réponse de jesusonline
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Dernière intervention
15 septembre 2009
0
Merci
J'ai essayé dans le PreRender de ma page, puis de mon contrôle, mais j'ai une erreur : 

      RegisterForEventValidation ne peut être appelé que pendant Render();

J'ai donc essayé dans PreRenderComplete de ma page, et là :

      System.Web.HttpException: Les informations d'état ne sont pas valides pour cette page et sont peut-être corrompues.

Qu'est-ce qui ne va pas?
 

<hr />
@+  
Commenter la réponse de cs_drahcir
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
override void render(...)
{
   //ici :)
}

<hr />Cyril - MVS - MCP
Commenter la réponse de jesusonline
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Dernière intervention
15 septembre 2009
0
Merci
Je suis pommé là

je dois mettre ça dans le javascript??
Qu'y a t'il entre parenthèses : void render(...)?

<hr />
@+  
Commenter la réponse de cs_drahcir
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
pk du Javascript ?

ce que je t'ai montrer c'est du C# ...

en VB je sais plus la syntaxe ca ressemble à peu prés à la meme chose

protected overrides sub render(writer as HtmlTextWriter)
   ' ici
end sub

<hr />Cyril - MVS - MCP
Commenter la réponse de jesusonline
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Dernière intervention
15 septembre 2009
0
Merci
Ah ok je comprend mieux.


Le problème, c'est que ça plante avant de rentrer dans le render





<hr />

@+  
Commenter la réponse de cs_drahcir
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
Comment ca avant de rentrer dans le render ?


tu fais quoi exactement, t'affiches ta page une fois donc tu passes par le render et faire un RegisterEventValidation puis aprés ta page revient et c'est la que ca plante ? ca veut donc dire que lors du premier passage tu as merdé pas mis les bons arguments ... :-/





<hr />

Cyril - MVS - MCP
Commenter la réponse de jesusonline
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Dernière intervention
15 septembre 2009
0
Merci
Je m'explique un peu mieux.

Je veux faire un drag drop d'une image button vers un node de mon treeview, et lorsque je relache le bouton de la souris, je veux simuler le click sur ce même noeud. Dans mon javascript, je lance __doPostBack(...) sur le onMouseUp de mon treeview. Et c'est là que ça coince!!
Quand je rentre dans le render précédent, je ne sais pas sur quelle branche je vais glisser mon image, donc le second param me pose problème....

<hr />
@+  
Commenter la réponse de cs_drahcir
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
t'enregistre l'event avec tous les px de ta page ? ;-) 

Regarde comment fait le controle imagebutton : Reflector est ton ami :-) A mon avis pour ce genre de cas il n'enregistre pas son evenement ... donc 2 solutions : la méthode crade c'est rajouter enableventvalidation="false" dans la directive de page ... l'autre solution est de passer par un input type='hidden' qui stockera la position du click, puis tu lances l'event avec des params simple !
 
Mais la position du click t'es t'il vraiment indispensable ?

<hr />Cyril - MVS - MCP
Commenter la réponse de jesusonline

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.