Quelqu'un peut-il me dire si/comment vous pouvez valider les changements dans un contexte de données dans Linq2Sql avant en appelant SubmitChanges(). La situation que j'ai est que je crée un contexte, effectue plusieurs opérations et ajoute de nombreux insertions aux côtés d'autres tâches de traitement, puis la restauration si la soumission échoue.Valider Linq2Sql avant SubmitChanges()
Ce que je préférerais faire est de faire une sorte d'appel "Validate()" après que certaines tâches ont été effectuées afin que je puisse le gérer avant de soumettre le travail entier.
jamais remarqué la méthode .GetChangeSet() avant! Merci pour ça! +1 – StevenMcD
L'approche actuelle avec laquelle j'ai fini est de créer une classe partielle avec le nom de la table et l'implémentation du code de validation dans OnFooChanging() pour les champs que je voulais valider. Cela fonctionne pour lancer des exceptions immédiatement lorsque la valeur est définie plutôt que sur SubmitChanges(). Je n'ai pas utilisé le ChangeSet mais il m'a indiqué la bonne direction et est pratique à savoir de toute façon. –
@Nick - Je me sens inutile en vous disant cela parce que je ne me souviens pas du blog où je lis, mais apparemment c'est une bonne idée de garder la validation séparée des gestionnaires "OnChange", car cela permet des scénarios de validation complexes. la validation d'une propriété dépend de la valeur des autres, etc. – Mark