当我在服务方面抛出SoapException
时,我很困惑:
Throw New SoapException("Error Message", SoapException.ClientFaultCode)
在客户端,异常被视为FaultException
- 它会进入此捕获
Catch ex As FaultException(Of ExceptionDetail)
为什么这不是SoapException
因此进入下面?
e.g。
Catch ex As SoapException
答案 0 :(得分:2)
当你扔掉一个以外的东西时
FaulException
或FaultException(Of TDetail)
(其中SoapException
不是),WCF会抛出FaultException
。
我怀疑你已ServiceBehaviorAttribute.IncludeExceptionDetailInFaults
开启?这就是WCF发送FaultException(Of ExceptionDetail)
的原因,ExceptionDetail
从您投掷的异常中初始化。