2009-05-20 9 views
6

Chcę zaimplementować tę metodę częściową w mojej klasie tabeli Linq.Kiedy jest OnValidate wywołana w Linq?

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

Moja nadzieja jest taka, że ​​nazywa się to tuż przed wstawką. Czy ktoś może mi powiedzieć, kiedy wywoływana jest metoda OnValidate?

Update 1

Rozumiem, że mogę sprawdzić wyliczenia, aby zobaczyć, jakie działanie powoduje, że ogień. Ale KIEDY jest wywoływana? Muszę wiedzieć, czy jest wywoływana za każdym razem, gdy ktoś przesyła zmiany lub co?

Odpowiedz

6

Metoda OnValidate dla każdej zmienionej jednostki, jeśli istnieje, zostanie wywołana podczas SubmitChanges dla kontekstu danych zawierającego encję. Spowoduje to uruchomienie wszystkich wstawień, aktualizacji i usunięć wykonanych w tym kontekście danych od czasu ostatniego wywołania funkcji SubmitChanges (lub utworzonego kontekstu). Jeśli chcesz odróżnić swoje działania sprawdzania poprawności w zależności od rodzaju zmiany, możesz wyłączyć parametr ChangeAction, aby kontrolować przepływ wykonania.

+0

Awesome właśnie to, czego potrzebowałem! Dzięki! –