2012-06-27 35 views
0

我有一個報告應用程序,它與用戶系統接口並返回要在報告中使用的數據。由於我無法控制他的數據,也沒有數據結構的知識,所以我一直使用C#DataTable來保存數據。替代從WCF數據服務返回DataTable

我的應用程序通過PowerPivot通過web服務返回的數據沒有出現,但現在我明白我需要使用WCF數據服務來實現此目的。

我的問題是我不想返回一個DataTable對象,我寧願將它轉換爲更易於管理的東西並返回它。

任何人都可以建議替代品嗎?

回答

1

我建議你在數據表上使用Xml序列化,這是更易於管理的,也是一種很好的做法。

+0

我看到你的觀點,但我不認爲這會工作作爲這些數據的最終目的地是MS電力樞紐,那就沒有一種機制來反序列化,我試圖將XML – keitn

0

查看DataTableSurrogate,它在SyncFramework中用於序列化DataTables。

MSDN Data Table Surrogate

+0

使用DataTableSurrogate但是當我試圖從我的WS返回它時,我得到一個錯誤「無法序列化,因爲它沒有無參數構造函數」,它似乎DataTableSurrogate只有一個構造函數需要一個DataTable。 – keitn

+0

是的,它在構造函數中需要一個Datatable。我發現使用Datatable很方便,聽起來它對你很有用,因爲你不太瞭解數據的性質,DataTable已經非常通用。否則,你必須自己實現一些非常通用的東西。 – flayn

+0

但我的問題是我需要通過一個web服務返回這些數據以供Microsoft Power Pivot使用,所以它看起來像使用DataTableSurrogate不是解決方案。 – keitn