[C#] Probleme d'écriture dans un fichier XML
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:
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:
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:
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:
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:
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 ???