我們有一個DAL需要在可以回滾或提交的單個事務中包裝許多數據庫插入。管理跨多個事務的SQL數據庫連接
處理這個問題的最佳做法是什麼?
目前,我們正在做以下幾點:
- 創建數據庫連接和事務
- 填寫的集合與所有代表執行操作的類。通過構造函數傳入連接。
- 在try/catch中,循環遍歷所有動作類並調用他們的Publish()方法
- 如果成功(關閉連接)則提交,如果錯誤(關閉連接)則回滾。
這個過程可能需要一段時間,我們似乎用盡了池中的數據庫連接。有沒有更好的方式來管理交易?
這是使用SQL 2008,.net 3.5和4.1版本的企業庫數據訪問。
爲什麼說當您只使用一個連接在所有類上進行插入時,您的池連接用完了? – msvcyc 2009-07-31 14:28:26