Est-ce que l'ajout et la suppression de DataAnnotations, en particulier le [requried], est nécessaire pour le code? Mon problème est que je veux donner à l'utilisateur la possibilité d'enregistrer un formulaire incomplet dans nos applications CRUD mais en même temps utiliser la puissance de la validation DataAnnotations.Ajout et suppression d'annotations de données à partir du code
Si ce n'est pas possible, quelle est la meilleure façon de procéder?
Ici, vous ne supprimez pas la DataAnnotation mais effacez juste les ModelErrors. Le problème avec ceci est qu'il supprime toutes les erreurs et pas un particulier. Par exemple, dites "someKey" est à la fois nécessaire et a une restriction de longueur. En courant clair, vous perdez les deux. Si vous avez cette restriction de longueur parce que votre db a une restriction sur la longueur du champ, alors vous perdrez des données sur save si vous essayez d'enregistrer. Cela fonctionnerait cependant, si vous pouviez supprimer juste sélectionner des erreurs. – Scott
Bien que je ne l'ai pas fait personnellement, je crois que vous pouvez supprimer les erreurs individuelles pour n'importe quelle clé. Dans votre exemple, pourquoi ne pas avoir un attribut StringLength? Si vous souhaitez que les utilisateurs puissent enregistrer un formulaire "incomplet", dans quel sens les champs "Obligatoire" sont-ils remplis? Est-ce vraiment juste une règle commerciale qui dit que l'entrée n'est pas "complète" à moins que certains champs ne soient remplis? – Larsenal