10
votes

MVC 3 Razor - Validation de la gâchette du contrôleur

Je dois vérifier si le courrier électronique de nouveaux utilisateurs existe déjà dans la base de données. L'e-mail transmet toute la validation normale, mais si je souhaite déclencher une validation spéciale du contrôleur si le courrier électronique existe déjà après la vérification de la base de données?


0 commentaires

3 Réponses :


29
votes

dans le contrôleur: modelstate.addmodelerror ("erroremail", "message d'erreur");

Vue: @ html.validationmessage ("Erroremail")

J'espère que cela aide


1 commentaires

Il y a en fait un moyen d'accomplir cela à partir du point de vue lui-même.



3
votes

Je pense que ce que vous cherchez est le remoteauttribute .

Ceci est un validationAttribute pour la validation à distance. Cela fonctionne comme les autres attributs de validation en ajoutant des erreurs de modèle à votre dictionnaire de modèles de modèle.

Consultez ces articles sur l'utilisation du RemoteTreBute :


0 commentaires

0
votes

J'ai trouvé un moyen d'effectuer une validation conditionnelle du point de vue de la vue. La classe VM devra mettre en œuvre l'interface IDALIDATIBABLEObject.

Ajoutez une méthode similaire à celle-ci au bas de la machine virtuelle: P>

@Html.ValidationMessage("ErrorEmail")


0 commentaires