Knoten zu xml-dokument hinzufügen


Gambl

Grünschnabel
Hallo,

ich habe folgendes problem, ich soll einen neuen Knoten in einem XML-file programmgesteuert hinzufügen, dass es ungefähr so ausschaut:

<root>
<Haus Id="1" Name="Einfamilienhaus">
<Türen>
<Tür Nr="1"/>
<Tür Nr="1"/>
</Türen>
</Haus>
</root>

das rote soll ich neu hinzufügen, mich würde nur interessieren wie ich diese Knoten programmgesteuert realisieren kannß

Vielen dank schon mal für eure Hilfe

Gruß Gambl
 

Norbert Eder

Erfahrenes Mitglied
Jetzt aus dem Gedächtnis, nicht getestet:
Code:
XmlDocument doc = new XmlDocument();
doc.LoadXml("<root><Haus Id=\"1\" Name=\"Einfamilienhaus\"></Haus></root>");

XmlNode nodeHaus = doc.SelectSingleNode("root/Haus[@Id=\"1\"]");
if (nodeHaus != null) 
{
  XmlNode nodeTueren = doc.CreateElement("Tueren");
  XmlElement nodeTuer1 = doc.CreateElement("Tuer");
  nodeTuer1.SetAttribute("Nr", "1");
  XmlElement nodeTuer2 = doc.CreateElement("Tuer");
  nodeTuer2.SetAttribute("Nr", "2");
  nodeTueren.AppendChild(nodeTuer1);
  nodeTueren.AppendChild(nodeTuer2);
  nodeHaus.AppendChild(nodeTueren);
}
Console.WriteLine(doc.OuterXml);
PS: Mit den Umlauten würde aufpassen -> Keine verwenden
 

Gambl

Grünschnabel
ja ok danke hat mir weitergeholfen!
ich lese jetzt das ganze xml-dokument in ein dataset ein.
Wie kann ich hier nun dem Türen Knoten eine weitere Tür zuweisen?
Wie ist da der Zugriff geregelt?