2

ユーザーがアプリケーションの一方のコピーで SQL CE データベースからデータをエクスポートし、もう一方の端で SQL CE に再インポートできるようにする製品機能に取り組んでいます。このデータはテーブル全体ではなく、クエリの結果です。

DataTable.WriteXML のように、.net に組み込まれている XML ベースのシリアル化を利用したいと考えていました。ただし、SqlCeCommand に対してクエリを実行するメソッドはいずれも、メソッドを提供できる XML へのシリアル化または DataTable の抽出の明白な方法を提供しません。

足りないものはありますか?独自のシリアライゼーション/デシリアライゼーション メソッドを作成する必要がありますか、それとも組み込みの方法がありますか。

4

3 に答える 3

4

cmdがあなたのSqlCeCommandであると仮定します...。

using(var dr = cmd.ExecuteReader())
{
   DataSet ds = new DataSet();
   DataTable dt = ds.Tables.Add();
   dt.Load(dr);
   ds.WriteXML(...);
}
于 2008-09-16T18:56:35.703 に答える
1

を作成し、SqlCeDataAdapterそれをデータセットとして使用し.Fill()ます。次に、そのメソッドを使用してデータセット全体をシリアル化し.WriteXml()ます。

于 2008-09-16T18:53:12.497 に答える
0

データを DataSet に取得し、それに対して WriteXML を呼び出してから、反対側で新しい DataSet を宣言し、その上で ReadXML を呼び出すことができると思います。

于 2008-09-16T18:49:39.493 に答える