Comment fait-on de validation de propriétés d'une classe C# à l'aide de Données d'Annotations .NET Framework 3.5?
Est-il possible dans le .NET Framework à part une méthode ou un programme de validation d'une instance d'objet dont la classe est décorée avec Annotations De Données, et de recevoir une collection d'erreurs?
Je vois qu'il y a une façon de le faire .NET 4.x. Mais est-il un mécanisme similaire .NET 3.5?
je ne sais pas si il y a quelque chose comme ça .NET 3.5, mais si vous êtes prêt à utiliser une autre bibliothèque, Microsoft Enterprise Application Bloc contient une Validation de l'Application Bloc qui contient une classe de validation de valider les objets décorés avec DataAnnotations.
OriginalL'auteur Robert Harvey | 2013-06-24
Vous devez vous connecter pour publier un commentaire.
Avec un peu de réflexion, vous pouvez construire votre propre programme de validation qui scrute le
ValidationAttributes
sur les propriétés que vous avez. Il peut ne pas être la solution idéale, mais si vous êtes limité à l'utilisation .NET 3.5, cela semble être une solution légère, j'espère que vous obtenez l'image.Cette affiche de la manière suivante dans la Console:
Tout simplement génial!
OriginalL'auteur Patrick Magee
Linq Version
OriginalL'auteur Mattia
Ceux annotation de données des trucs travaille principalement dans le contexte d'un autre cadre par exemple. MVC w/Rasoir, Fluide etc. Sans un autre cadre, les annotations sont ce qu'ils sont, ils sont un marqueur de code, et ont besoin d'un cadre/code supplémentaire pour faire l'interprétation.
Annotation par lui-même n'est pas vrai AOP/Intercepter, et donc les annotations ne rien faire jusqu'à ce que l'objet décoré avec l'annotation est soumis à un cadre intermédiaire qui sait comment interpréter /analyser le marqueur de codes (généralement par l'intermédiaire d'. la réflexion).
Pour vrai AoP qui pourraient rendre les annotations de travail intrinsèquement vous aurez besoin de quelque chose comme PostSharp/Unité etc. Ces cadres de modifier la IL lors de l'exécution/le temps de compilation et redirige le code d'origine.
Hahah McGee ;D je suis Irlandais bien, mais pas que les Irlandais!
OriginalL'auteur Alwyn