Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
wcf服务上的wsHttpBinding和客户端上的web引用don';行不通_Wcf_Soap_Wsdl_Wshttpbinding_Soapheader - Fatal编程技术网

wcf服务上的wsHttpBinding和客户端上的web引用don';行不通

wcf服务上的wsHttpBinding和客户端上的web引用don';行不通,wcf,soap,wsdl,wshttpbinding,soapheader,Wcf,Soap,Wsdl,Wshttpbinding,Soapheader,我正在对WCF服务使用wsHttpBinding 我添加了一个web引用,并获得了web代理(它基于SoapHttpClientProtocol) 我还尝试使用wsdl.exe和wcf服务()生成的实际wsdl构建代理 当客户端调用该服务时,我得到以下错误: 消息“”上指定的SOAP操作与HTTP SOAP操作“”不匹配http://tempuri.org/Service1/Operation1“。 为什么客户端(web代理)不能与我的WCF服务一起工作 我应该采取什么措施使它们发挥作用 我正在

我正在对WCF服务使用
wsHttpBinding

我添加了一个web引用,并获得了web代理(它基于
SoapHttpClientProtocol

我还尝试使用
wsdl.exe
和wcf服务()生成的实际wsdl构建代理

当客户端调用该服务时,我得到以下错误:

消息“”上指定的SOAP操作与HTTP SOAP操作“”不匹配http://tempuri.org/Service1/Operation1“。

为什么客户端(web代理)不能与我的WCF服务一起工作

我应该采取什么措施使它们发挥作用


我正在运行.NET FW 3.5和ASP.NET 2.0。

您不能使用旧ASMX代理的默认配置在
wsHttpBinding
上公开的服务。您必须使用添加服务引用/svcutil或将绑定更改为
basicHttpBinding
wsHttpBinding
的默认配置使用高级安全性,ASMX不支持它。

您可以检查您的wsdl SoapAction地址吗这是我的wsdl:。。。定义为:xmlns:wsa=“”xmlns:wsp=“”xmlns:wsap=“”xmlns:xsd=“”xmlns:msc=“”xmlns:wsaw=“”xmlns:soap12=“”xmlns:wsa10=“”xmlns:wsx=“”政策:非常感谢您快速而连贯的回答!希望它能帮助犯同样错误的人…我已将绑定更改为basicHttpBinding,但现在我得到以下信息:System.Net.WebException:请求失败,HTTP状态为415:无法处理消息,因为内容类型为'application/soap+xml;字符集=utf-8;action=“”不是预期的类型“text/xml”;字符集=utf-8'。我使用SOAPUI4.0来测试服务。WCFTestClient可以很好地使用该服务,但ASMX代理不能。但我需要使用web(ASMX)代理…它表示您正在SOAP 1.2中传递请求,但服务只接受SOAP 1.1.OK。那么,我如何将客户端更改为使用SOAP1.1呢?这是我的服务器配置:删除代理并再次添加web引用
BasicHttpBinding
仅使用SOAP 1.1,因此客户端应自动使用它。