0

我只是在开发我的第一个 WCF WebMethod,并且正在研究错误处理。

在花了一周时间阅读之后,普遍的共识似乎是 WCF WebMethods 中的错误应该被抛出为WebFaultException, 或FaultException。此外,许多教程教导说 usingFaultException(Of T)提供了更好的功能。这似乎很简单......

然后,我发现一个消息来源指出,当 WebMethod 被非 .NET 应用程序(例如 Java 等)使用时,抛出 CLR 异常并不好,并且应该使用 SOAP 错误。

有人可以澄清一下逻辑是否内置在 WCF 4.5 中以自动转换FaultException并转换FaultException(Of T)为外部系统可以处理/理解的 SOAP 错误吗?

一般来说,其他人如何将错误传达给外部系统?

4

1 回答 1

2

如果您使用 FaultException(Of T),它将与其他 SOAP 技术(如 Java)互操作。这篇 SO 帖子解释了它 - WCF/WebService: Interoperable exception handling。这就是我为 Java 客户端所做的。如果您需要更多详细信息,请告诉我。

于 2012-12-14T15:28:50.633 回答