2008-09-16 10 views
2

Je travaille sur une fonctionnalité de produit qui permettra à l'utilisateur d'exporter des données d'une base de données SQL CE sur une copie de mon application et de les réimporter dans SQL CE à l'autre extrémité. Ces données ne sont pas des tables entières, mais le résultat de requêtes.Sérialisation des données SQL CE en XML

J'avais espéré tirer parti de la sérialisation XML intégrée de .net comme dans DataTable.WriteXML. Mais, aucune des méthodes pour exécuter des requêtes sur un SqlCeCommand ne fournit un moyen évident de sérialiser en XML ou d'extraire un DataTable, ce qui pourrait fournir la méthode.

Y a-t-il quelque chose qui me manque? Dois-je écrire mes propres méthodes de sérialisation-désérialisation ou y a-t-il une méthode intégrée?

Répondre

4

En supposant cmd est votre SqlCeCommand ....

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

Je pense que vous pouvez récupérer les données dans un DataSet, appelez-le WriteXML, puis à l'autre extrémité, déclarez un nouveau DataSet et appelez ReadXML dessus.

1

Vous souhaitez créer un SqlCeDataAdapter et l'utiliser .Fill() un ensemble de données. Puis sérialiser l'ensemble de données entier via sa méthode .WriteXml().

Questions connexes