Web服务操作是否可以返回多种类型?

时间:2014-06-03 06:10:03

标签: java c# web-services wsdl

我正在使用由其他团队撰写的网络服务。

我在WSDL中使用的操作是:

<wsdl:operation name="transactionReport">
    <wsdl:input name="transactionReportRequest" message="schema:transactionReportRequest">
    </wsdl:input>
    <wsdl:output name="transactionReportResponse" message="schema:transactionReportResponse">
    </wsdl:output>
</wsdl:operation>

正如它在WSDL中描述的那样,transactionReport操作的结果必须是transactionReportResponse类型。

但在某些情况下(出错时)会返回此XML作为结果:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Header />
  <SOAP-ENV:Body>
    <errorOccur xmlns="http://thecompany/servicesCompanyInfo/definitions">
      <errorCode>3</errorCode>
      <errorDescription>CUSTOMER_ID or FROM_DATE should have value</errorDescription>
    </errorOccur>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

它似乎反对WSDL。我是真的吗?

我希望此操作只返回transactionReportResponseFault

问题1:此操作也可以返回errorOccur吗?

问题2:如果可以,那我怎样才能在C#中获取此对象? (尽管XML包含errorOccur

,它返回null

0 个答案:

没有答案