XNode.Remove Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Tar bort den här noden från den överordnade noden.
public:
void Remove();
public void Remove();
member this.Remove : unit -> unit
Public Sub Remove ()
Undantag
Den överordnade är null.
Exempel
I följande exempel tar du bort en nod från den överordnade noden.
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)
Det här exemplet genererar följande utdata:
<Root>
<Child1>child1 content</Child1>
<Child2>child2 content</Child2>
<Child4>child4 content</Child4>
<Child5>child5 content</Child5>
</Root>
Kommentarer
I LINQ till XML-programmering bör du inte ändra en uppsättning noder när du frågar efter noder i den uppsättningen. I praktiken innebär det att du inte bör iterera över en uppsättning noder och ta bort dem. I stället bör du materialisera dem till en List<T> med hjälp ToList av tilläggsmetoden. Sedan kan du iterera över listan för att ta bort noderna. Mer information finns i Mixed Deklarativ kod/Imperativa kodbuggar (LINQ till XML).
Om du vill ta bort en uppsättning noder rekommenderar vi att du använder Extensions.Remove metoden. Den här metoden kopierar noderna till en lista och itererar sedan över listan för att ta bort noderna.
Den här metoden genererar Changed händelserna och Changing .
Lagrar XContainer sina underordnade noder som en singly-länkad lista över XNode objekt. Det innebär att Remove metoden måste gå igenom listan över direkta underordnade noder under den överordnade containern. Därför kan användningen av den här metoden påverka prestandan.