2011-08-04 141 views
0

当在出于某种原因已断开连接的WCF通道上调用方法时,会引发ObjectDisposedException。在断开连接的WCF通道上处理ObjectDisposedExceptions

现在是正常的操作,这不应该发生,但如果由于某种原因,它希望能够通过向用户显示错误很好地处理异常,例如“操作失败,因为服务未连接”。

问题是我只是在我的appwide异常处理程序中得到一个通用的处置异常,所以我无法确定WCF是否抛出它。

解决此问题我目前有一个包装类,它简单地用try/catch封装所有服务方法调用,并重新抛出任何ObjectDisposedException作为我的全局处理程序可以处理的自定义通信异常。尽管如此,这是一大堆我可以做的样板文件。

有什么方法可以确定WCF是否引发异常?

干杯

回答

1

我曾经遇到这样的问题,现在看来,这是难以确定是否WCF抛出异常。只有当您尝试使用该通道时,才能为此问题使用CommunicationObject.Status,它会抛出异常来告诉您通道出现故障。

因此,我使用了像你这样的方式。

相关问题