其他語言(JAVA)調用.NET Web服務返回的DataSet的問題

來源:互聯網
上載者:User

          Java中沒有DotNet內建的DataSet類,無法解析.雖然網上有些在Java下的類似DataSet類能有限解決該問題,但是最好還是用標準方法。

解決方案:

WebService函數,最終返回結果是個xml字串,而DataSet產生的xml字串,是使用匿名架構型別宣告的.

所以必須使用單一資料型別或單一資料型別數組.

在盡量少改變原有代碼的基礎上,有以下3種解決方案.

1、 伺服器端返回為string,內容為xml字串,可以使用DataSet.GetXml()方法.

   服務端改動量很少.

對應用戶端需要自己讀取該xml字串.

2 、返回為包含單一資料型別的類數組,但在服務端要將DataSet中的各個欄位都一一映射的數組中.

      用戶端很方便讀取.

     服務端改動量稍微大點,如果欄位多的話就麻煩了.

3、伺服器返回大量資料DataSet的時候,可以採用壓縮技術,返回Byt[]位元組,並且打包壓縮傳輸。

總結:

WebService傳輸資料時,參數類型最好是單一資料型別,或者直接是個xml字串.

這樣能夠避免各個系統之間的相容性問題(跨語言性)。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.