【问题标题】:Why does WCF fault the channel when using security?为什么 WCF 在使用安全性时会导致通道出错?
【发布时间】:2013-02-11 08:32:00
【问题描述】:

背景:

我注意到,在我的 WCF 服务中,当我抛出一个异常(一个普通的旧异常)时,客户端通道进入故障状态并且必须中止并重新创建,然后我才能在该通道上进行另一个调用.没关系。这就是它的意图。我知道了。所以我只需调用 abort() 并在需要再次调用时重新创建。

但是,只有在我使用启用了安全性的绑定时才会发生客户端通道故障。当我使用 basicHttpBinding 时,我可以在客户端上得到一个异常,然后继续使用 ServiceClient 对象而不告诉我它处于“故障状态”。

另外,当我关闭 wsHttpBinding 或 netTcpBinding 的安全性时,我可以在出现异常后重新使用通道。

问题:

什么是绑定的安全性导致通道出错导致无法使用?

【问题讨论】:

    标签: wcf wcf-binding wcf-faults


    【解决方案1】:

    这是因为使用 Security,您正在设置一个安全的会话。当您退出该会话时,通道将进入故障状态,您必须中止它并创建一个新状态。使用 BasicHttpBinding,不会进行任何会话。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-08
      • 1970-01-01
      • 2016-02-06
      • 1970-01-01
      • 2011-11-18
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多