【发布时间】:2013-03-17 13:56:28
【问题描述】:
我想知道是否可以将 WCF 服务客户端配置为在抛出错误时使用自定义类型而不是 FaultException。自定义类型将继承自 FaultException,但还会包含有关错误的一些其他详细信息。
我想使用自定义 FaultException 的原因是我可以存储 SOAP 标头中的 GUID,否则会丢失。
我知道我可以手动捕获并重新抛出服务客户端返回的任何错误,但这很脆弱。我无法保证未来的开发者也会这样做。
我考虑过对生成的服务客户端类进行子类化并将错误处理放在其中,但是每当目标服务发生更改时,都会产生大量工作。
那么,是否可以配置 WCF 服务客户端为故障抛出自定义的 FaultException 类型?
【问题讨论】:
-
你看过Fault Contracts吗?
-
如果我对 FaultContracts 的理解是正确的,那么它们是在服务端定义的。在我的特殊情况下,我无权访问服务端。我正在尝试获取当前的故障并用 SOAP 标头数据修饰它们(主要是因为我无法影响服务抛出的实际故障中的内容)。我错了吗?
标签: wcf error-handling wcfserviceclient