如何从发布为 WCF Services 的业务流程中引发错误异常
可以从业务流程发送两种类型的 SOAP 错误:类型化和非类型化 SOAP 错误。 类型化 SOAP 错误是指操作具有指定自定义 SOAP 错误类型的 System.ServiceModel.FaultContractAttribute 。 非类型化 SOAP 错误则是那些没有在操作的约定中指定的错误。
WCF 适配器不支持对发布为 WCF Services 的业务流程的类型化错误约定异常进行处理。 但是,非类型化 SOAP 错误可始终由业务流程或管道返回。 若要返回非类型 SOAP 错误,需要在接收位置或配置文件中设置 System.ServiceModel.ServiceBehaviorAttribute.IncludeExceptionDetailInFaults ,以允许 WCF 客户端获取有关内部服务操作异常的信息。
下面的代码演示如何在配置文件中设置该属性:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehaviorConfiguration">
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</configuration>