I'm trying to create a web service client (asmx), connected to web service(.svc) from another host. I used add web reference that generating the service classes in the project. However, when I call the getData() for example, Im getting this error :
System.InvalidOperationException: Client found response content type of 'multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:*****************+id=1";start-info="text/xml"', but expected 'text/xml'.
The request failed with the error message:
--
--uuid:********************+id=1
Content-ID: <http://tempuri.org/0>
Content-Transfer-Encoding: 8bit
Content-Type: application/xop+xml;charset=utf-8;type="text/xml"
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:a="http://www.w3.org/2005/08/addressing"><s:Header><a:Action s:mustUnderstand="1">http://www.w3.org/2005/08/addressing/fault</a:Action><a:FaultDetail><a:ProblemHeaderQName>a:Action</a:ProblemHeaderQName></a:FaultDetail></s:Header><s:Body><s:Fault><faultcode>a:ActionMismatch</faultcode><faultstring xml:lang="en-US">The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://tempuri.org/ICustomService/GetData'. </faultstring></s:Fault></s:Body></s:Envelope>
--uuid:***************************+id=1--
I tried with the soapUI. It's working fine and this is the RAW response
HTTP/1.1 200 OK
Cache-Control: private
Transfer-Encoding: chunked
Content-Type: multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>;"start-info="text/xml"
MIME-Version: 1.0
--uuid:****************
Content-ID: <http://tempuri.org/0>
Content-Transfer-Encoding:8bit
Content-Type:application/xop+xml;charset=utf-8;type="text-xml"
<s:Envelope............
By the way, the service url is added automatically inside applicationSettings tag eg.
<applicatonSettings>
<my_service.Properties.Settings>
<setting name="my_service.serviceInquriy.CustomService" serializeAs="String">
<value>http://serviceurl/serviceInquriy.svc</value>
</setting>
</my_service.Properties.Settings>
</applicatonSettings>