.NET Soap Client получает нулевое значение в ответ вместо реального значения
У нас есть клиент.NET с веб-ссылкой на веб-службу на основе SOAP. Метод, который мы вызываем, имеет подпись string request()
но когда мы называем это, мы только получаем нулевое значение. Целевая служба получает запрос и отвечает чем-то отличным от нуля, но наш клиент только возвращает нулевое значение
Глядя на WSDL, ответ должен быть следующим:
<message name="requestResponse">
<part name="request" type="xsd:any"/>
</message>
Фактический ответ выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:pt_service" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
<env:Body xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
<ns1:requestResponse env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
<rpc:result>textnoenc</rpc:result>
<response>
<result>12</result>
<message><![CDATA[Bad]]></message>
<error>
<code>0</code>
<desc><![CDATA[Bad]]></desc>
</error>
</response>
</ns1:requestResponse>
</env:Body>
</env:Envelope>
Похоже, что целевой сервис отвечает чем-то, что не определено в WSDL, в результате чего клиент возвращает нулевое значение, но я не уверен в этом
Может кто-нибудь пролить свет на то, что может происходить здесь?
Примечание: на клиенте не было никаких исключений