Après avoir passé du temps pour clouer ce problème, j'ai réussi à trouver la cause profonde du problème.
Le problème est lié au nouveau mode de validation discret de .NET 4.5. Pour que cela fonctionne correctement, jQuery 2.0 est requis. Ceci est standard dans .NET 4.5. Cependant, la version jQuery intégrée dans RadControls (jusqu'au moins la version 2013Q3) est V1.9.1 (voir ici). En conséquence CustomValidator
ne fonctionne plus correctement.
Il y a deux alternatives à cela - je n'ai essayé le premier avec succès:
Désactiver le mode de validation discrète. Pour ce faire, vous devez inclure la ligne suivante dans le
<appSettings>
Section de laweb.config
dossier:<add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
L'inconvénient: le mode de validation discret est conçu pour fabriquer SE de nouvelles fonctionnalités HTML5 afin d'éliminer le code JavaScript généré afin d'effectuer les validations, ce qui entraîne des pages plus légères (voir ici). En le désactivant, vous n'utilisez pas cette fonctionnalité.
Choisissez de ne pas utiliser la version intégrée de jQuery pour RadControls (c'est-à-dire v1.9.1) et utilisez celle fournie par .NET 4.5 (c'est-à-dire v2.0).
L'inconvénient: le problème ici est que RadControls a été testé à l'aide de la version intégrée de jQuery et que vous pouvez rencontrer des problèmes. Afin de désactiver la version intégrée de jQuery, veuillez vous référer à ce lien
J'espère que cela aidera la prochaine personne qui trébuchera sur ce même problème.