用MVC + Postsharp處理異常。 這是我的項目架構用MVC + Postsharp處理MVC異常
MVC項目 - >>>業務層 - 數據層>>>
MVC項目(在全局文件添加自定義過濾器並創建了一個基本控制器捕捉異常。)
業務層(中間件)
數據層(連接到Postgres數據庫服務器,並獲取數據。)
在DataLayer中,我添加了PostSharp來處理來自數據庫端的異常,並使用NLog記錄/電子郵件。 現在從這裏我想告訴MVC異常管道向用戶顯示正確的消息,發生了一些異常。所以我使用
args.FlowBehavior = FlowBehavior.ThrowException;
現在我在MVC OnException方法中捕獲此異常。
問題:我也在MVC異常方法中記錄和發送異常的電子郵件,以及發生在MVC端的任何異常。
現在的問題是我已經記錄併發送了由Postsharp處理的exeption的電子郵件,現在當它到達MVC時異常處理程序將再次執行該操作。
我怎樣才能知道在MVC的異常已經被記錄。 我可以做什麼在Postsharp結束像發送一些參數,我可以在MVC異常處理程序檢查。
請提出一個解決方案或指導,以解決此問題
這樣做的原因是Postsharp給了我們一個更好的結果,現在被調用的方法的名稱術語和在獲得通過什麼樣的參數。既然現在有例外occuered在DataAccess層和由Postsharp處理我想要一些機制來貼近用戶關於一些異常發生。 –
是否有任何理由爲什麼包裝異常不能解決您的使用案例? –