【问题标题】:WCF Exceptions thrown by ChannelFactoryChannelFactory 抛出的 WCF 异常
【发布时间】:2008-12-21 17:40:40
【问题描述】:

我正在连接到服务并使用由 ChannelFactory 创建的通道。我想知道在调用服务接口的方法时会抛出哪些异常(例如,如果有一个名为 ICalculator 的服务接口并且我正在调用它的 Add(5, 4))。 我无法搜索该主题,因为我真的不知道如何命名问题以及我到底在寻找什么。 如有任何此类信息的链接,我将不胜感激。

我的意思是有关损坏连接等的异常,而不是服务创建者指定的异常。

【问题讨论】:

    标签: c# wcf web-services channelfactory


    【解决方案1】:

    你可以得到:

    • FaultException 或派生类 (FaultException),如果服务实现抛出未处理的异常。

    • CommunicationException 如果与服务通信发生错误。

    可能还有其他的,但这些是您通常会处理的。

    【讨论】:

    • “我通常处理 EndpointNotFoundException” - 这是从 CommunicationException 派生的,因此 (a) 如果您想以不同于其他 CommunicationExceptions 的方式处理它,您只需要显式处理它,并且 (b) 如果您要处理它,您必须在捕获 CommunicationException 之前捕获它。
    • 根据MSDN-ChannelFactory 中的代码示例,您可能还想捕获 TimeoutException。
    【解决方案2】:

    我怀疑你想抛出的任何类型的异常。为什么只允许某些例外情况?

    【讨论】:

    • -1:服务实现抛出的异常不会传播到客户端。相反,将传播 SOAP 错误,客户端将其视为 FaultException。
    • 这个问题没有提到向调用者传播异常
    猜你喜欢
    • 2012-01-24
    • 2011-07-17
    • 2011-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    • 2013-05-24
    • 1970-01-01
    相关资源
    最近更新 更多