8
votes

Existe-t-il un moyen de désactiver la validation des événements pour une page entière?

J'ai un contrôle d'utilisateur imbriqué qui apparaît sur chaque page. Il contient une certaine validation sous la forme de validateurs ASP.NET.

Le problème que je rencontre est, car c'est sur chaque page (en substance, il est situé dans mon contrôle de navigation gauche), j'ai besoin de définir causesvalidation = "false" sur chaque bouton, etc. ..

Y a-t-il un moyen de définir des causesValidation = "Faux" au niveau de la page?


0 commentaires

3 Réponses :


12
votes
Page.EnableEventValidation   = false;
It is strongly recommended that you do not disable event validation. If you do disable event validation, make sure that no postback could be constructed that could have an unintended effect on your application.http://msdn.microsoft.com/en-us/library/system.web.ui.page.enableeventvalidation.aspx

4 commentaires

Je pense que je pourrais juste rester avec désactivation de l'évalidation de l'événement pour chacun des boutons.


ouais .. ça pourrait mieux idée que je suppose


Peut-être juste une mauvaise conception de ma part en mettant une forme modale avec validation de l'événement. Je vais peut-être vous débarrasser des validateurs ASP.NET et faites-le simplement dans le code derrière.


Je vois des recommandations à ne pas désactiver cela, mais il n'y a pas de solution de contournement publiée ici ni sur le site de MS. Donc, si vous utilisez une bibliothèque latérale client, vous devez désactiver ceci?



2
votes

1
votes

Validation des événements et les causes Propriété de validation d'un contrôle sont des choses très différentes.

Je pense que ce que vous voulez faire est d'arrêter les validateurs ASP dans votre userControl de tirer lorsque vous faites quelque chose dans le contenu principal de votre page.

Tout ce que vous avez à faire est d'ajouter un nom de validationGroup aux validateurs et au bouton qui soumet le formulaire dans votre UserControl.

BTW: Validation des événements est un peu de magie .NET qui arrête tout ce qui ressemble à JavaScript dans un formulaire et soumis à un serveur.

Tournant cette éteinte == Bad Times.


0 commentaires