Hinzufügen von Elementen, Attributen und Knoten zu einem XML-Baum (C#)Adding Elements, Attributes, and Nodes to an XML Tree (C#)

Sie können einer vorhandenen XML-Struktur Inhalt (Elemente, Attribute, Kommentare, Verarbeitungsanweisungen, Text und CDATA) hinzufügen.You can add content (elements, attributes, comments, processing instructions, text, and CDATA) to an existing XML tree.

Methoden zum Hinzufügen von InhaltMethods for Adding Content

Die folgenden Methoden fügen einem XElement oder einem XDocument untergeordneten Inhalt hinzu:The following methods add child content to an XElement or an XDocument:

MethodeMethod BeschreibungDescription
Add Fügt Inhalt am Ende des untergeordneten Inhalts des XContainer hinzu.Adds content at the end of the child content of the XContainer.
AddFirst Fügt Inhalt vor dem untergeordneten Inhalt des XContainer hinzu.Adds content at the beginning of the child content of the XContainer.

Die folgenden Methoden fügen Inhalt als nebengeordnete Knoten eines XNode hinzu.The following methods add content as sibling nodes of an XNode. 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.The most common node to which you add sibling content is XElement, although you can add valid sibling content to other types of nodes such as XText or XComment.

MethodeMethod BeschreibungDescription
AddAfterSelf Fügt Inhalt nach dem XNode hinzu.Adds content after the XNode.
AddBeforeSelf Fügt Inhalt vor dem XNode hinzu.Adds content before the XNode.

BeispielExample

BeschreibungDescription

Das folgende Beispiel erstellt zwei XML-Strukturen und ändert dann eine der beiden Strukturen:The following example creates two XML trees, and then modifies one of the trees.

CodeCode

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);  

KommentareComments

Dieser Code erzeugt die folgende Ausgabe:This code produces the following output:

<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 auchSee Also

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