Bonjour!

Je suis en train de réaliser une fonction qui me permet d'écrire dans un fichier xml a partir d'un Dataset.

Dans un premier temps, je récupere mon Fichier Xml dans le Dataset :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
XmlDocument xmlDoc = new  XmlDocument();
XmlDoc.Load(HttpContext.Current.Server.MapPath("setup/Setup.xml"));
DataSet ds = new  DataSet();
XmlNodeReader xnr = new XmlNodeReader(xmlDoc);
ds.ReadXml(xnr);
return ds;
J'insere une ligne dans le DataSet :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
DataRow Dr = DsXml.Tables["mytabechild"].NewRow();
				Dr[0] = ServerName;
				Dr[1] = ServerPort;
DsXml.Tables["mytabechild"].Rows.Add(Dr);
Ensuite je réécri mon fichier Xml a partir du Dataset :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
DsXml.WriteXml(HttpContext.Current.Server.MapPath("setup/Setup.xml"));
Mais je n'obtient pas le résultat escompté !

il ne me place pas mon insertion ou je veux ...

en effet :
Fichier Xml lorsqu'il est chargé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<main>
    <parent1>
         <enfant1/>
         <enfant2/>
    </parent1>
    <parent2>
         <enfant3/>
         <enfant4/>
    </parent2>
</main>
si j'insere une ligne j'obtient :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
<main>
    <parent1>
         <enfant1/>
         <enfant2/>
    </parent1>
   <enfant5>  <---- PROBLEME !
    <parent2>
         <enfant3/>
         <enfant4/>
    </parent2>
</main>
J'aimerai qu'il s'insere directement en dessous de parent1 et je ne comprend pas pourquoi cela ne le fait pas !
Quelqu'un a til une idée pour m'aider ???