2010-08-02 72 views
0

我有一個silverlight 4 ria應用程序,我想在實體提交到數據庫後觸發事件。我以爲我可以使用dataclassescontext方法,如OnSubmitted event

OnCreated() OnIdChanged()

,但他們被稱爲提交之前,我只想要一次一個新的實體被添加到數據庫觸發事件,並且一旦id變更被提交。

+0

dataclassescontext從哪裏來的? – Timwi 2010-08-02 19:14:36

+0

這是我知道的自動化linq-2-sql dbml – Jakob 2010-08-02 19:33:55

+0

。你能回答這個問題嗎?它的基類是什麼? – Timwi 2010-08-02 19:34:22

回答

1

您可以在dataclassescontext中使用名爲「InsertX」,「UpdateX」和「DeleteX」的重寫方法,其中「X」是表的名稱。

例如,如果您的實體表稱爲用戶,則方法稱爲partial void InsertUser(User instance)等。這些方法在SubmitChanges()階段被調用,並且僅在這種覆蓋方法是「標準」插入/刪除/更新不存在。

在編寫這些Insert/Update/Delete覆蓋方法時,需要注意幾件事情。這些記錄在MSDN上:Responsibilities of the Developer In Overriding Default Behavior (LINQ to SQL)

+0

所以這就是我誤解了:)你真棒! – Jakob 2010-08-03 10:12:37

+0

謝謝:) ----- – Timwi 2010-08-03 14:55:50