0

我继承了一个配置了 basicHttpBinding 的 WCF 服务 (1),它与另一个配置了 basicHttpBinding 的 WCF 服务 (2) 通信。我正要涉及另一个 WCF 服务 (3),因此我从 (2) 复制了绑定配置部分,因此 (1) 现在也可以与 (3) 通信。(1) 到 (2) 工作得很好,但是 (1) 到 (3) 炸弹由于配置错误。

(2) 的绑定配置将 messageEncoding 设置为“Mtom”,从我读到的内容仅适用于 wsHttpBinding。当我在 (3) 的配置中留下 messageEncoding="Mtom" 时,我得到配置异常。如果我把它拿出来,或者把它从“Mtom”改为“Text”,那么从(1)到(3)的通信就可以了。

WCF 服务 (1) 和 (2) 都配置了 basicHttpBinding,但都将 messageEncoding 设置为“Mtom”。

我不想破坏我不完全理解的东西,但我也不想在我的 web.config 中留下不必要的(或不正确的)配置。在这种情况下是否只是忽略了 Mtom,因为这两个服务的配置方式相同,并且默认情况下返回到 Text?Mtom 是否以任何方式适用于 basicHttpBinding?

4

1 回答 1

1

basicHttpBinding 也可以支持 mtom,所以你的服务使用了 mtom。您可以验证是否将提琴手放在中间并查看有效负载。

于 2012-06-07T22:27:47.930 回答