J'essaie de configurer xVal avec un projet ASP.NET MVC 2 Preview 1. Je suis fondamentalement en suivant l'exemple à http://blog.codeville.net/2009/01/10/xval-a-validation-framework-for-aspnet-mvc/ à la lettre (côté serveur seulement, jusqu'à présent).Messages d'erreur xVal apparaissant deux fois
J'annotée une entité BlogPost, et voici l'action post:
[HttpPost]
public ActionResult Index(BlogPost b)
{
try
{
_blogService.Insert(b);
}
catch (RulesException ex)
{
ex.AddModelStateErrors(ModelState, "");
}
return (View(b));
}
Et voici la méthode de service:
public void Insert(BlogPost post)
{
var errors = DataAnnotationsValidationRunner.GetErrors(post);
if(errors.Any())
{
throw new RulesException(errors);
}
_blogRepo.Insert(post);
}
(Notez que le DataAnnotationsValidationRunner est mot pour mot de l'exemple de blog). Lorsque je soumets un formulaire BlogPost totalement invalide, j'obtiens cette liste d'erreurs de validation:
- Une valeur est requise.
- S'il vous plaît donner un titre
- S'il vous plaît entrer une date affichée
- S'il vous plaît entrer un contenu
- S'il vous plaît donner un titre
- S'il vous plaît entrer une date affichée
- S'il vous plaît entrer un contenu
Je ne sais même pas à quoi sert le premier message, mais comme vous pouvez le voir, les autres erreurs apparaissent deux fois. Qu'est-ce que je fais mal? Ou est-ce un problème avec MVC V2?
Oui, c'est ça. En fait, je ne pensais pas que les trucs Annotation fonctionneraient aussi facilement, wow. Quoi qu'il en soit, l'autre erreur était parce que je n'ai pas défini la valeur Id pour utiliser un ensemble privé (NHibernate POCO). Merci beaucoup! –