2015-02-10 36 views
1

我SOAP端點ADRESS返回像SOAP響應和.net無法序列的queryParameterqueryParameterqueryParameter水平。 它返回爲空。C#.NET Web服務手柄3嵌套響應

我們該如何解決這個問題?

<ResultInfos> 
    <ResultInfos> 
     <queryParameter> 
      <queryParameter> 
       <queryParameter> 
        <parameterFormat/> 
        <parameterName/> 
        <parameterType>dfgsfgsd</parameterType> 
        <parameterValue>2342234</parameterValue> 
       </queryParameter> 
       <queryParameter> 
        <parameterFormat/> 
        <parameterName/> 
        <parameterType>safd</parameterType> 
        <parameterValue>234234</parameterValue> 
       </queryParameter> 
       <queryParameter> 
        <parameterFormat/> 
        <parameterName/> 
        <parameterType>sfsdf</parameterType> 
        <parameterValue>3454</parameterValue> 
       </queryParameter> 
       <queryParameter> 
        <parameterFormat/> 
        <parameterName/> 
        <parameterType>234234</parameterType> 
        <parameterValue>A</parameterValue> 
       </queryParameter>     
      </queryParameter> 
     </queryParameter> 
    </ResultInfos> 
</ResultInfos> 

回答

1

我們將編輯.net生成的reference.cs。 .Net無法處理這種響應。我們會幫助它。

打開您的Web服務reference.cs並將這些行添加到您的類的頂部。 在我們的例子中queryparameter [] []。

關鍵字是NestingLevel attirabute。

[System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)] 
    [System.Xml.Serialization.XmlArrayItemAttribute("queryParameter", Namespace = "http://wsserver", IsNullable = false)] 
    [System.Xml.Serialization.XmlArrayItemAttribute("queryParameter", Namespace = "http://wsserver", IsNullable = false, NestingLevel = 1)] 
    [System.Xml.Serialization.XmlArrayItemAttribute("queryParameter", Namespace = "http://wsserver", IsNullable = false, NestingLevel = 2)] 
    public QueryParameter[][] queryParameter { 
     get { 
      return this.queryParameterField; 
     } 
     set { 
      this.queryParameterField = value; 
     } 
    }