Question

Je suis en train de décider quelle approche la validation de prendre pour un nouveau projet ASP.NET MVC. (Et wow il y a beaucoup d'options!)

Le projet utilise NHibernate, donc la première chose que je considérais comme était le NHibernate Validator (En raison de l'intégration étroite avec NHibernate). Cependant, pour autant que je peux voir, il y a seulement quelques avantages à cette intégration étroite:

1) DB généré par les schémas NHibernate comprendra détails de validation (par exemple des longueurs de colonnes seront mis à la valeur maximum autorisée dans la validation). (Ce n'est pas vraiment d'intérêt pour moi que, comme je produis des schémas manuellement.)

2) NHibernate lancera une exception si vous essayez d'enregistrer des données qui ne sont pas conformes aux spécifications de validation. (Cela semble assez redondant pour moi, puisque les données seront probablement déjà validés par tout mécanisme que vous choisissez avant d'enregistrer de toute façon)

S'il y a plus d'avantages à NHibernate Validator s'il vous plaît laissez-moi savoir!

D'autres bibliothèques que j'ai lu un peu les suivants:

  • MS DataAnnotations
  • Château Validator
  • Quelque chose d'autre?

J'ai aussi pensé à l'aide xVal pour fournir la validation du côté client du même ensemble de règles. Cependant, j'entends dire que ASP.NET MVC v2 comprendra quelque chose de similaire à xVal (intégration avec jquery) hors de la boîte? Est-ce que cette nouvelle fonctionnalité incluse rendre quelques-unes des autres en surnombre?

Alors, je demande essentiellement pour les conseils des gens sur la direction à prendre ici. Je ne veux pas mettre en œuvre un régime particulier, ne pas avoir à déchirer quand un autre devient la technologie dominante.

Qu'est-ce qui a fonctionné pour vous? Quelle option pensez-vous a / aura le bord?

Merci!

Était-ce utile?

La solution

J'utilise FluentValidation avec validation jQuery plugin et ne peut toujours pas trouver une situation dans laquelle ils ne peuvent pas gérer.

Autres conseils

J'aime xVal .

Vous pouvez implémenter très facilement validation client et serveur avec elle. Il y a aussi un soutien pour la validation de la colonne (propriété) sur les entités que vous souhaitez utiliser.

Vous pourriez être intéressé par cet . J'étais parce que je n'ai pas aimé l'idée xVal (la solution im va actuellement avec) et le fait qu'il ne semble pas répondre aux cas complexes de validation qui ont traversé plusieurs propriétés identiques ou même différentes structures de classe.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top