J'écris une application ASP.NET MVC 2 en utilisant NHibernate et le modèle de référentiel. J'ai un assemblage qui contient mon modèle (entités commerciales), de plus dans mon projet web je veux utiliser des objets aplatis (avec éventuellement des propriétés/logique supplémentaires) comme ViewModels. Ces machines virtuelles contiennent des métadonnées spécifiques à l'interface utilisateur (par exemple, DisplayAttribute utilisé par la méthode Html.LabelFor()). Le problème est que je ne sais pas comment implémenter la validation de sorte que je ne me répète pas à travers les différents niveaux (spécifiquement les règles de validation sont écrites une fois dans Model et propagées à ViewModel).Bonne façon de valider le modèle dans ASP.NET MVC 2 et ViewModel apporach
J'utilise DataAnnotations sur mon ViewModel mais cela signifie qu'aucune règle de validation n'est imposée au modèle lui-même. Une approche que je considère consiste à dériver des objets ViewModel d'entités commerciales en ajoutant de nouvelles propriétés/en remplaçant les anciennes, conservant ainsi les métadonnées de validation entre les deux, mais il s'agit d'une solution de contournement laide.
J'ai vu le projet Automapper qui aide à mapper les propriétés, mais je ne suis pas sûr qu'il puisse gérer les métadonnées de validation ASP.NET MVC 2 correctement. Est-il difficile d'utiliser un framework de validation personnalisé dans asp.net mvc 2?
Avez-vous des modèles qui aident à préserver DRY en ce qui concerne la validation?