Hinzufügen von Elementen, Attributen und Knoten zu einem XML-Baum (C#)

Sie können einer vorhandenen XML-Struktur Inhalt (Elemente, Attribute, Kommentare, Verarbeitungsanweisungen, Text und CDATA) hinzufügen.

Methoden zum Hinzufügen von Inhalt

Die folgenden Methoden fügen einem XElement oder einem XDocument untergeordneten Inhalt hinzu:

Methode Beschreibung
Add Fügt Inhalt am Ende des untergeordneten Inhalts des XContainer hinzu.
AddFirst Fügt Inhalt vor dem untergeordneten Inhalt des XContainer hinzu.

Die folgenden Methoden fügen Inhalt als nebengeordnete Knoten eines XNode hinzu. Der Knoten, dem Sie am häufigsten nebengeordneten Inhalt hinzufügen, ist XElement, obwohl Sie gültigen nebengeordneten Inhalt auch anderen Knotentypen hinzufügen können, z. B. XText oder XComment.

Methode Beschreibung
AddAfterSelf Fügt Inhalt nach dem XNode hinzu.
AddBeforeSelf Fügt Inhalt vor dem XNode hinzu.

Beispiel

Beschreibung

Das folgende Beispiel erstellt zwei XML-Strukturen und ändert dann eine der beiden Strukturen:

Code

XElement srcTree = new XElement("Root",   
    new XElement("Element1", 1),  
    new XElement("Element2", 2),  
    new XElement("Element3", 3),  
    new XElement("Element4", 4),  
    new XElement("Element5", 5)  
);  
XElement xmlTree = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5)  
);  
xmlTree.Add(new XElement("NewChild", "new content"));  
xmlTree.Add(  
    from el in srcTree.Elements()  
    where (int)el > 3  
    select el  
);  
// Even though Child9 does not exist in srcTree, the following statement will not  
// throw an exception, and nothing will be added to xmlTree.  
xmlTree.Add(srcTree.Element("Child9"));  
Console.WriteLine(xmlTree);  

Kommentare

Dieser Code erzeugt die folgende Ausgabe:

<Root>  
  <Child1>1</Child1>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
  <NewChild>new content</NewChild>  
  <Element4>4</Element4>  
  <Element5>5</Element5>  
</Root>  

Siehe auch

Modifying XML Trees (LINQ to XML) (C#) (Ändern von XML-Strukturen (LINQ to XML) (C#))