2008-09-03 128 views
1

我想捕獲在服務器上的遠程對象中拋出的所有未處理的異常,並將它們記錄在那裏,然後將其轉換爲某些自定義異常,以便特定異常不會跨越客戶端/服務器邊界。如何在使用.NET Remoting時捕獲未處理的異常

我想我必須使用自定義的頻道同步,但任何人都可以確認這一點和/或有任何其他建議給予?

回答

0

在找到Eliyahu Baker's有用的博客帖子並閱讀Rammer's Advanced .NET Remoting的第12章之後,我寫了一個自定義的頻道接收器,它可以做我想做的事。這會攔截任何異常並在將其發送到客戶端之前在本地進行記錄。

理想情況下,我想記錄異常併爲客戶端提出更通用的異常,但我還沒有破解這個堅果。

+0

您是否願意分享更多詳細信息?我試着使用Eliyahu Baker的技術(在archive.org上找到博客文章之後),但它似乎沒有捕獲客戶端意外斷開連接時發生在服務器上的遠程處理異常(這正是我想要處理的,大部分)。 – ulatekh 2015-06-25 20:43:50

1

我會使用Microsoft企業庫異常處理應用程序塊 - 它可以讓您處理錯誤,並在重新展示給客戶端之前將特定類型的異常轉換爲其他類型的異常。

+0

謝謝,我沒有聽說過這個。我不認爲它解決了我的問題,但我想捕捉*未處理的異常*。在我看來,EHAB是關於爲編碼異常處理程序應用策略的。我只想記錄意外的異常,以便我們可以在後面的代碼版本中編寫適當的處理程序。 – nickd 2008-09-04 11:02:56

相關問題