我正在構建一個.NET WebApi應用程序,我想設置一個全局錯誤處理程序(基本上是一個函數,當異常從應用程序中的任何地方冒出來時執行)。 this link對此表示支持,但提供了幾種解決方法。不幸的是,我似乎無法找到任何有用的文檔。如何在WebApi中設置全局錯誤處理程序?
這裏是我的要求:
- 捕獲例外的操作方法,以及在其他地方打(例如控制器分辨率。)。
- 在我的處理過程中有權訪問原始的Exception對象。
- 在錯誤處理過程中,我可以訪問我的(Autofac)IOC容器中的服務(這是一個強烈的需求,但不是必須的)。
- 不依賴於MVC(我正在使用純WebApi)。不需要依賴於IIS。
我該如何解決這個問題?
請問UnhandlesExceptionHandler Web服務器上運行時的實際工作或做拋出的異常得到由底層服務器吞噬? – ChaseMedallion
從我的測試中,UnhandledException處理程序從來沒有真正運行......好像底層服務器在某處捕獲異常。 – ChaseMedallion
我承認我沒有在WebApi中試過。對不起,這沒有爲你工作。你有沒有考慮過像ELMAH https://code.google.com/p/elmah/。這提供了非常廣泛的異常記錄。這裏是一篇文章如何整合http://www.tugberkugurlu.com/archive/asp-net-web-api-and-elmah-integration – user2509738