XNode.Remove Methode

Definition

Entfernt diesen Knoten aus seinem übergeordneten Element.

public:
 void Remove();
public void Remove ();
member this.Remove : unit -> unit
Public Sub Remove ()

Ausnahmen

Das übergeordnete Element ist null.

Beispiele

Im folgenden Beispiel wird ein Knoten aus seinem übergeordneten Element entfernt.

XElement xmlTree = new XElement("Root",  
    new XElement("Child1", "child1 content"),  
    new XElement("Child2", "child2 content"),  
    new XElement("Child3", "child3 content"),  
    new XElement("Child4", "child4 content"),  
    new XElement("Child5", "child5 content")  
);  
XElement child3 = xmlTree.Element("Child3");  
child3.Remove();  
Console.WriteLine(xmlTree);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child1>child1 content</Child1>  
            <Child2>child2 content</Child2>  
            <Child3>child3 content</Child3>  
            <Child4>child4 content</Child4>  
            <Child5>child5 content</Child5>  
        </Root>  

Dim child3 As XElement = xmlTree.<Child3>(0)  
child3.Remove()  
Console.WriteLine(xmlTree)  

Dieses Beispiel erzeugt die folgende Ausgabe:

<Root>  
  <Child1>child1 content</Child1>  
  <Child2>child2 content</Child2>  
  <Child4>child4 content</Child4>  
  <Child5>child5 content</Child5>  
</Root>  

Hinweise

Bei LINQ to XML Programmierung sollten Sie eine Gruppe von Knoten nicht bearbeiten oder ändern, während Sie Knoten in dieser Gruppe abfragen. In der Praxis bedeutet dies, dass Sie eine Reihe von Knoten nicht durchlaufen und entfernen sollten. Stattdessen sollten Sie sie mithilfe der ToList Erweiterungsmethode in eine List<T> materialisieren. Anschließend können Sie die Liste durchlaufen, um die Knoten zu entfernen. Weitere Informationen finden Sie unter Mixed Declarative Code/Imperative Code Bugs (LINQ to XML).

Wenn Sie eine Reihe von Knoten entfernen möchten, empfiehlt es sich alternativ, die Extensions.Remove -Methode zu verwenden. Diese Methode kopiert die Knoten in eine Liste und durchläuft dann die Liste, um die Knoten zu entfernen.

Diese Methode löst die Changed Ereignisse und aus Changing .

Der XContainer speichert seine untergeordneten Knoten als eine singlich verknüpfte Liste von XNode Objekten. Dies bedeutet, dass die Remove -Methode die Liste der direkten untergeordneten Knoten unter dem übergeordneten Container durchlaufen muss. Daher kann sich die Verwendung dieser Methode auf Ihre Leistung auswirken.

Gilt für:

Weitere Informationen