我正在使用企業庫的DAAB訪問數據庫,這兩個數據庫均使用ExecuteReader
和ExecuteNonQuery
。問題是,這些方法沒有記錄異常...然後,我怎麼知道應該捕獲哪些異常?企業庫中未記錄的例外
回答
問題在於,有許多例外情況會在比企業庫低的級別拋出,而且EL不可能將所有這些情況記錄下來。
我建議你使用異常處理和記錄塊來捕獲和記錄所有異常。然後您可以查看哪些發生了,並調整異常處理程序的配置或添加新代碼來處理特定的執行選項。
問題是我已經捕獲並「手動」處理了很多不同的異常......我能否將它們調整到新的處理塊? – User
是的,儘管當我從手動異常處理切換到最終掌握企業庫時,我發現我的massivley減少了所需的異常處理代碼的數量,並且還對代碼中引發的異常有了更好的覆蓋。 –
我WebTurner同意,我猜一個良好的開端將是你連接到數據庫,所以如果我猜一對夫婦的MS SQL數據庫(也許很多)的例外是:
- SQLEXCEPTION
- 出現InvalidOperationException
http://msdn.microsoft.com/en-us/library/9kcbe65k.aspx
編輯:
我只是碰到這種傳來:How can I determine which exceptions can be thrown by a given method?
它看起來liek它使用反射來幫助發現被拋出的異常的列表。
實際上,您所做的是找出哪些異常將由一個較低級別的操作和服務器類型返回。這不是一個糟糕的開始,但是您需要檢查EL中的整個實現以找出引發的異常。 –
完全同意@webturner,謝謝你的增加的細節。這只是一個開始,但肯定不是徹底的。 –
- 1. 企業庫記錄
- 2. 企業庫日誌記錄
- 3. 企業庫不記錄
- 4. 企業庫4.1例外策略
- 5. 使用企業庫記錄查詢
- 6. 企業庫4.1日誌記錄錯誤?
- 7. 企業庫日誌記錄:TraceListeners問題
- 8. 單元測試企業庫「記錄器」外觀
- 9. 企業庫5:創建企業庫對象的實例
- 10. 使用企業庫日誌記錄登錄到Azure SQL?
- 11. Datastax企業Sqoop演示,有例外
- 12. 企業庫的外部配置文件
- 13. 使用企業庫進行數據庫記錄5
- 14. 企業庫5記錄到數據庫爭用
- 15. 添加額外的信息用於記錄數據與企業庫
- 16. 微軟企業庫的未來
- 17. 企業庫SqlCacheDependency
- 18. 企業庫:
- 19. 企業庫slidingExpirationTime
- 20. 企業庫ValidatorFactory
- 21. 使用企業庫登錄的模式
- 22. 企業庫中的事務
- 23. 如何爲IIS6上運行的企業庫日誌記錄塊
- 24. 使用企業庫的異常處理日誌記錄
- 25. 企業庫插入行示例
- 26. 如何使用Moq驗證企業庫日誌記錄?
- 27. Azure網站和企業庫日誌記錄
- 28. 企業庫4.1日誌記錄sharepoint web.config拋出錯誤?
- 29. 企業庫日誌記錄寫日誌參數
- 30. 使用企業庫批量日誌記錄
我只是好奇你爲什麼認爲你需要抓住每一個可能的例外?拋出的特定異常將取決於您的數據庫提供者,因爲大多數錯誤可能是數據庫或網絡(連接等)異常。此外,大多數例外情況都是系統例外,我認爲除了日誌記錄之外,您可以做很多事情,並可能讓用戶知道發生了錯誤。 –