2009-05-20 9 views
6

Je veux implémenter cette méthode partielle dans ma classe de table Linq.Quand OnValidate est-il appelé dans Linq?

partial void OnValidate(System.Data.Linq.ChangeAction action); 

Mon espoir est que c'est appelé juste avant un insert. Quelqu'un peut-il me dire quand la méthode OnValidate est appelée?

Update 1

Je comprends que je peux vérifier l'ENUM pour voir ce que l'action provoque au feu. Mais QUAND est-il appelé? J'ai besoin de savoir s'il est appelé chaque fois que quelqu'un soumet des changements ou quoi?

Répondre

6

La méthode OnValidate pour chaque entité modifiée, si elle existe, sera appelée pendant SubmitChanges pour le contexte de données contenant l'entité. Il déclenchera donc toutes les insertions, mises à jour et suppressions effectuées avec ce contexte de données depuis la dernière fois que SubmitChanges a été appelé (ou le contexte créé). Si vous devez distinguer vos actions de validation en fonction du type de modification, vous pouvez désactiver le paramètre ChangeAction pour contrôler le flux d'exécution.

+0

Impressionnant juste ce dont j'avais besoin! Merci! –