使用.NET Remoting时如何捕获未处理的异常
时间:2020-03-05 18:47:20 来源:igfitidea点击:
我想捕获在服务器上的远程对象中抛出的所有未处理的异常,并将它们记录在此处,然后再将它们转换为一些自定义异常,以使特定的异常不会越过客户端/服务器边界。
我想我必须使用自定义频道同步功能,但是任何人都可以确认这一点和/或者提供其他建议吗?
解决方案
回答
我将使用Microsoft Enterprise Library Exception Handling应用程序块-它可以让我们处理错误并将特定类型的异常转换为其他类型的异常,然后再重新提交给客户端。
回答
在找到Eliyahu Baker的有用的博客文章并阅读了Rammer的Advanced .NET Remoting的第12章之后,我编写了一个自定义通道接收器,该通道可以满足我的需求。这将拦截任何异常并将其记录在本地,然后再将其发送到客户端。
理想情况下,我想记录该异常并为客户端提出一个更通用的异常,但是我还没有破解。