WCF SOAP响应命名空间问题

WCF SOAP响应命名空间问题,wcf,soap,xml-namespaces,Wcf,Soap,Xml Namespaces,WCF返回空对象,尽管我可以从fiddler跟踪中看到数据正在返回。我确信这是名称空间的问题,但在阅读了所有文档之后,我看不出有什么问题!请求和响应SOAP如下: 请求: POST https://x.x.x.x:9001/soap/ HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.34209) VsDebuggerCausalityData: uI

WCF返回空对象,尽管我可以从fiddler跟踪中看到数据正在返回。我确信这是名称空间的问题,但在阅读了所有文档之后,我看不出有什么问题!请求和响应SOAP如下:

请求:

POST https://x.x.x.x:9001/soap/ HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.34209)
VsDebuggerCausalityData: uIDPo0Xy/aB8aeVEhMD2Z4yiT1MAAAAAKokUeOFUmEaRRFeDK7Ihn37dui0ez7tEhWItLBqEHq0ACQAA
Content-Type: text/xml; charset=utf-8
SOAPAction: "get_wsdl_version"
Host: x.x.x.x:9001
Content-Length: 236
Expect: 100-continue
Connection: Keep-Alive

<?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <soap:Body />
    </soap:Envelope>
编辑:添加WDSL代码段-从VS中提取

<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:tns="cust_service.TableLampService"    xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:typens="cust_service.TableLampService" name="TableLampService" targetNamespace="cust_service.TableLampService" xmlns="http://schemas.xmlsoap.org/wsdl/">
  <plnk:partnerLinkType name="TableLampService">
    <plnk:role name="TableLampService">
      <plnk:portType name="tns:TableLampService" />
    </plnk:role>
  </plnk:partnerLinkType>
  <types>
    <xs:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="cust_service.TableLampService">
      <xs:element name="get_wsdl_versionResponse" type="typens:get_wsdl_versionResponse" />
      <xs:complexType name="get_wsdl_versionResponse">
        <xs:sequence>
          <xs:element name="get_wsdl_versionResult" type="xs:int" />
        </xs:sequence>
      </xs:complexType>
    </xs:schema>
  </types>
  <message name="get_wsdl_version" />
  <message name="get_wsdl_versionResponse">
    <part name="get_wsdl_versionResponse" element="typens:get_wsdl_versionResponse" />
  </message>
  <portType name="TableLampService">
    <operation name="get_wsdl_version" parameterOrder="get_wsdl_version">
      <documentation>
        get_wsdl_version() -&gt; int

        Return the SOAP server's WSDL version.  This is used to check
        client/server compatibility.

        Parameters: None

        Exceptions: None
        </documentation>
      <input name="get_wsdl_version" message="typens:get_wsdl_version" />
      <output name="get_wsdl_versionResponse" message="typens:get_wsdl_versionResponse" />
    </operation>
  </portType>
  <binding name="TableLampService" type="typens:TableLampService">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="get_wsdl_version">
      <soap:operation soapAction="get_wsdl_version" style="document" />
      <input name="get_wsdl_version">
        <soap:body use="literal" />
      </input>
      <output name="get_wsdl_versionResponse">
        <soap:body use="literal" />
      </output>
    </operation>
   </binding>
</definitions>

获取\u wsdl\u version()-int
返回SOAP服务器的WSDL版本。这是用来检查的
客户端/服务器兼容性。
参数:无
例外情况:无
值得一提的是,我无法控制服务器端。我只需要使用我的代码中的服务,但我可以


提前谢谢

您能发布服务定义代码和客户呼叫代码plsTom吗?谢谢您关注我的问题。我刚刚添加了您要求的位。
Dim TestClient = New ServiceReference1.TableLampServiceClient

Dim Creds = New ServiceReference1.AuthInfo()
Creds.username = "xxx"
Creds.password = "yyy"

Dim TestVersion = TestClient.get_wsdl_version()
<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:tns="cust_service.TableLampService"    xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:typens="cust_service.TableLampService" name="TableLampService" targetNamespace="cust_service.TableLampService" xmlns="http://schemas.xmlsoap.org/wsdl/">
  <plnk:partnerLinkType name="TableLampService">
    <plnk:role name="TableLampService">
      <plnk:portType name="tns:TableLampService" />
    </plnk:role>
  </plnk:partnerLinkType>
  <types>
    <xs:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="cust_service.TableLampService">
      <xs:element name="get_wsdl_versionResponse" type="typens:get_wsdl_versionResponse" />
      <xs:complexType name="get_wsdl_versionResponse">
        <xs:sequence>
          <xs:element name="get_wsdl_versionResult" type="xs:int" />
        </xs:sequence>
      </xs:complexType>
    </xs:schema>
  </types>
  <message name="get_wsdl_version" />
  <message name="get_wsdl_versionResponse">
    <part name="get_wsdl_versionResponse" element="typens:get_wsdl_versionResponse" />
  </message>
  <portType name="TableLampService">
    <operation name="get_wsdl_version" parameterOrder="get_wsdl_version">
      <documentation>
        get_wsdl_version() -&gt; int

        Return the SOAP server's WSDL version.  This is used to check
        client/server compatibility.

        Parameters: None

        Exceptions: None
        </documentation>
      <input name="get_wsdl_version" message="typens:get_wsdl_version" />
      <output name="get_wsdl_versionResponse" message="typens:get_wsdl_versionResponse" />
    </operation>
  </portType>
  <binding name="TableLampService" type="typens:TableLampService">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="get_wsdl_version">
      <soap:operation soapAction="get_wsdl_version" style="document" />
      <input name="get_wsdl_version">
        <soap:body use="literal" />
      </input>
      <output name="get_wsdl_versionResponse">
        <soap:body use="literal" />
      </output>
    </operation>
   </binding>
</definitions>