2014-02-26 38 views
1

背景:事務提交不承諾並且沒有錯誤被拋出

我已經開發了一個包含業務邏輯類和數據訪問邏輯類的類庫項目。

我正在使用Microsoft SQL Server 2012數據庫(快速)來保存我的數據。

業務邏輯類具有執行驗證和任何必要的預保存邏輯的保存方法。驗證和預保存成功後,save方法使用數據訪問層方法通過與數據庫的新連接創建事務,並使用DataAdapters更新數據庫。

我一直在WPF項目中使用這些類,並且100%的時間都可以正常工作。

我現在正在開發一個ASP.NET MVC 3項目來創建相同應用程序的Web版本。我在我的ASP.NET應用程序中使用了與WPF應用程序中相同的類庫。

我使用VB.NET在我的所有項目中實現。

問題:我的課的

一個不與已經從我的ASP.NET應用程序更改的數據更新數據庫。

我已經通過保存邏輯從UI層下臺通過數據訪問層所有的方式,一切都設置正確,但事務提交不會引發任何異常或指示出了什麼錯,但的信息未在數據庫中設置

我已經確認行被修改了數據,調用了DataAdapter Update方法,調用了事務提交方法......一切看起來都很好,並且不會引發任何錯誤。我嘗試了ASP.NET應用程序使用的其他類,並發現它們的保存被完全正確地提交到數據庫(這些類使用與問題類相同的設計來保存數據)。我也嘗試從我的WPF應用程序調用有問題的類的save方法,並且一切正常(提交實際上將數據提交給數據庫)。

我完全處於虧損狀態,不知道如何解決我的問題。

請給我一些關於如何調試這個問題的想法!

我不打算髮布代碼,因爲讓人們看它太方便了。我只是在尋找關於如何調試的建議以及關於如何檢查其他人是否遇到過這個問題的任何建議。

+2

您是否嘗試過使用SQL Profiler對數據庫進行實際的數據庫調用?另外,你是否在數據庫中調用存儲過程,並且這些存儲過程是否已經設置了XACT_ABORT ON? –

+0

我正在使用SQL Express,因此我沒有該選項。我試過使用sp_who存儲過程,但它對我沒有太大的幫助。 – Frinavale

+0

我正在調用存儲過程來保存我的信息。 – Frinavale

回答

0

您可以做的最好的事情是運行SQL Server事件探查器實例來查看數據庫級別發生了什麼。

正如您使用的是2012版的SQL Server版本,請參閱this link,這樣您無論如何都可以獲得SQL Server概要分析器。

相關問題