Ma précédente impression de RequiredFieldValidator et similaire a été qu'ils vous montrent une étiquette d'erreur et définissez Page.IsValid false et c'est tout. Ce qui signifie qu'ils laissent le reste de la tâche (empêchant l'utilisation de mauvaises données d'entrée) pour vous. Mais aujourd'hui j'ai réalisé que si vous utilisez un DetailsView pour insérer un nouvel enregistrement dans une base de données, et que vous utilisez des validateurs pour vérifier les TextBox dans DetailsView, ils empêchent automatiquement la mise à jour de la base de données.Comment RequiredFieldValidator arrête-t-il automatiquement la mise à jour de la base de données?
Je voudrais savoir comment cela est implémenté derrière la scène. Je suppose qu'il a interrompu l'événement Page Lifecycle at Validator.PreRender, de sorte que les connexions de base de données à un stade ultérieur n'ont pas pu être atteintes? J'ai probablement tort.
J'essaie d'utiliser Reflector pour entrer dans le RequiredFieldValidator pour voir comment il est implémenté, mais je ne sais pas vraiment où chercher. Quelqu'un peut-il donner quelques conseils?
Bonjour, J'avais désactivé javascript dans mon navigateur et la validation côté serveur était responsable de la prévention automatique de la mise à jour de la base de données. – Aperture
Dans ce cas, la propriété DataView.EnableModelValidation doit être définie sur True. Si vous le définissez sur False, la validation devrait cesser de fonctionner. – Faheem
Bonjour, j'ai désactivé EnableModelValidation et la base de données n'était toujours pas mise à jour, ce qui signifie que EnableModelValidation n'est pas responsable de cela. – Aperture