好吧,我把自己搞糊涂了。我有一个调用另一个WCF服务(服务B)的WCF服务(服务A)。当我在服务B上抛出异常时,例如throw new Exception("test"),那么服务A不会得到异常,而是在响应消息上将IsFault设置为真。
responseMessage = forwardingChannel.Process(message)
if (responseMessage.IsFault) {
// Yes, there is a fault
}我希望我可以在Process方法周围放置一个try-catch并接收异常。有人能给我解释一下这是怎么回事吗?
谢谢
发布于 2009-08-18 16:55:01
如果服务A是一个Java服务,你会期望从调用服务B中得到一个.NET异常吗?
默认情况下,WCF服务中未处理的异常将作为错误返回。如果服务正在使用SOAP,它将作为SOAP错误返回。在一个普通的WCF客户端中,它会被转换成一个FaultException。
https://stackoverflow.com/questions/1294552
复制相似问题