Когда OnValidate вызывается в Linq? - PullRequest
6 голосов
/ 20 мая 2009

Я хочу реализовать этот частичный метод в моем классе таблиц Linq.

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

Я надеюсь, что он вызывается прямо перед вставкой. Кто-нибудь может сказать мне, когда вызывается метод OnValidate?

Обновление 1

Я понимаю, что могу проверить перечисление, чтобы увидеть, какое действие вызывает его срабатывание. Но КОГДА он вызывается? Мне нужно знать, вызывается ли он каждый раз, когда кто-то отправляет изменения, или как?

1 Ответ

6 голосов
/ 20 мая 2009

Метод OnValidate для каждого измененного объекта, если он существует, будет вызываться во время SubmitChanges для контекста данных, содержащего объект. Таким образом, он будет запускаться для всех вставок, обновлений и удалений, выполненных с этим контекстом данных с момента последнего вызова SubmitChanges (или создания контекста). Если вам необходимо различать действия по проверке в зависимости от типа изменения, вы можете отключить параметр ChangeAction, чтобы контролировать ход выполнения.

...