如何在WCF中更改SOAP Envelope架构?

我通过WCF连接到第三方端点,我有一个问题。 WCF生成的SOAP信封的模式与端点不兼容。

目前WCF正在生成:

 

但它必须是这样的:

  

我在soapUI中测试了这个以确认这是问题,但是如何在WCF中控制它? 我使用Visual Studio中的“添加服务引用”选项来生成服务。

有任何想法吗?

提前致谢。

安迪

最有可能的是,您遇到了SOAP版本的问题。 你用什么装订?

basicHttpBinding默认为SOAP 1.1,而wsHttpBinding默认为SOAP 1.2

这是SOAP 1.1(basicHttpBinding中的默认值):

  

虽然这是SOAP 1.2(wsHttpBinding中的默认值):

  

可能的解决方案:

1)要么你可以只切换绑定,那就是所有 – 你需要确保检查安全设置等等(基本和wsHttpBinding之间有所不同)

要么

2)您需要创建自己的自定义绑定并显式指定所需的SOAP版本