-
Datareader et XML
Bonjour,
Dans une appli, une procédure stockée me renvoie un jeu d'enregistrements que je récupère dans l'appli dans un datareader. Existe-t-il une méthode me permettant de sauvegarder ce datareader dans un fichier XML?
Ou bien dois-je parcourir le datareader et créer un fichier xml au fur et à mesure?
Merci pour les réponses
Bonne soirée
-
Bonsoir =)
Si je ne me trompe pas (de tête), tu peux utiliser un DataAdapter pour remplir directement (avec la méthode Fill sur le DataAdapter) un dataset.
De là il me semble que le DataSet possède une méthode WriteXml te permettant d'écrire un fichier XML contenant les données du DataSet.
J'espère que je ne me suis pas trompé et que cela pourra t'être utile.
-
Je suis bien d'accord avec toi, ça je sais faire, mais je la démarche me semble lourde puisqu'elle charge un datatable dans un dataset...
Je poursuis mes investigations.
Merci pour la réponse
-
Après quelques petites recherche j'ai trouvé sur le SqlDataReader une méthode GetSqlXml(int i) mais elle ne prend en argument que le numéro de la colonne. Elle nous retourne la valeur de la colonne spécifié en tant que XML .... =/
A part passer par ma méthode (plus ou moins suivant les différentes manière de remplir le DataSet), passer par de la sérialisation XML (où tu vas créer ta méthode pour le passer en XML), je ne vois que ce petit indice pour passer à du XML ...
Peut être faudrait-il se tourner vers des librairies qui font se genre de chose (si elles existent bien évidemment) ?
Pour ma part j'avais déjà mis en place la méthode que j'ai cité plus haut. C'était rapide mais j'avoue que je n'ai jamais comparé avec la sérialisation et que je n'avais pas non plus des tonnes de données (une table Utilisateurs avec des infos .... et pas plus de 30 personnes dedans). Il faudrait comparé avec bien plus de données pour savoir s'il y a réellement une perte de vitesse et peut être aussi regarder la consommation en ressource =/.
-
Bonjour,
Merci pour tes conseils.
Tu travaillais avec quel SGBD? je suis sur Oracle et je sais qu'on peut générer directement du xml avec du SQL, ce qui peut être une piste.
Je te tiens au courant
Bonne journée