2008-09-16 67 views
2

我正在研究的產品功能將允許用戶從我的應用程序的一個副本上的SQL CE數據庫中導出數據,並將其重新導入到另一端的SQL CE中。這些數據不是整個表格,而是查詢的結果。將SQL CE數據序列化爲XML

我曾希望利用.net內置的基於XML的序列化,如DataTable.WriteXML。但是,對SqlCeCommand執行查詢的方法都沒有提供序列化XML或提取DataTable的明顯方法,該方法可以提供該方法。

有什麼我失蹤了嗎?我是否必須編寫自己的序列化 - 反序列化方法或者是否有內置方法?

回答

4

假設cmd是你的SqlCeCommand ....

using(var dr = cmd.ExecuteReader()) 
{ 
    DataSet ds = new DataSet(); 
    DataTable dt = ds.Tables.Add(); 
    dt.Load(dr); 
    ds.WriteXML(...); 
} 
0

我認爲你可以將數據檢索到DataSet,調用WriteXML,然後在另一端聲明一個新的DataSet並在其上調用ReadXML。

1

你想創建一個SqlCeDataAdapter並使用它.Fill()一個數據集。然後通過它的.WriteXml()方法序列化整個數據集。