WCF中的错误处理-如何将错误传递给客户端,同时保持通道在“打开”状态;状态

本文关键字:状态 错误 通道 打开 客户端 处理 WCF | 更新日期: 2023-09-27 17:54:52

我想实现这样一种模式,在这种模式下,我的WCF服务中所有应用程序定义的错误都将传递给客户端,但通信通道必须保持在Open状态。

当前第一个任务是通过IncludeExceptionDetailInFaults = true实现的,但在第一个异常之后,通信通道状态从Open移动到Fault。如何防止这种行为(在服务代码中出现第一个异常后通信通道的损坏)?

WCF中的错误处理-如何将错误传递给客户端,同时保持通道在“打开”状态;状态

故障通道不能关闭,不能再次使用。故障通道必须通过调用Abort()方法终止。另外,与其使用"IncludeExceptionDetailInFaults = true",不如使用FaultExceptions。并且还建议您使用FaultContractAttribute来设计您的服务,以返回强类型的SOAP错误。