2010-11-02 144 views
0

我在調試Silverlight RIA的數據庫操作時遇到了很大的困難。我猜想,這是可以理解的,因爲數據庫操作是由大約3層服務和ORM和內容抽象出來的,但是有什麼辦法可以看到數據庫告訴我關於這個問題的內容嗎?我能夠找到一個EntityConflict對象,它不提供很多信息。調試Silverlight RIA服務SubmitChanges

似乎表明任何問題的唯一字段是「IsDeleted」屬性等於true,但是此屬性在MSDN中沒有很好的記錄,我甚至不能確定它是真實的問題。

我試圖使用提琴手,但沒有錯誤達到了,我已附加到應用程序的未處理的異常,但是這指向我通過處理SubmittedChanges事件和訪問參數正在恢復的EntityConflict。我甚至啓用了WCF跟蹤來嘗試恢復一些信息,但當然,也沒有任何信息。

+1

我發現問題是由於數據庫上的插入觸發器造成的。這並沒有改變這個事實,即觸發器有一個非常具體的消息,指出在調試過程中從未提供給我的故障。 – Sprague 2010-11-02 19:21:27

回答

0

這個問題是一個已知問題,至少在幾年前,INSTEAD OF INSERT不會爲此方法插入的列返回Scope_identity。 EF使用此值驗證插入是否完成。當它失敗時,你會得到一個刪除衝突。這顯然是SQL Server EF提供程序的一個已知問題,但是我一直無法確認它已經解決。