XNode.Remove Metoda
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Usuwa ten węzeł z węzła nadrzędnego.
public:
void Remove();
public void Remove();
member this.Remove : unit -> unit
Public Sub Remove ()
Elementem nadrzędnym jest null
.
Poniższy przykład usuwa węzeł z węzła nadrzędnego.
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)
Ten przykład generuje następujące wyniki:
<Root>
<Child1>child1 content</Child1>
<Child2>child2 content</Child2>
<Child4>child4 content</Child4>
<Child5>child5 content</Child5>
</Root>
W LINQ to XML programowaniu nie należy manipulować ani modyfikować zestawu węzłów podczas wykonywania zapytań dotyczących węzłów w tym zestawie. W praktyce oznacza to, że nie należy iterować po zestawie węzłów i usuwać je. Zamiast tego należy zmaterializować je w List<T> obiekcie przy użyciu ToList metody rozszerzenia. Następnie można wykonać iterację po liście, aby usunąć węzły. Aby uzyskać więcej informacji, zobacz Mixed Deklaratative Code/Imperatywne usterki kodu (LINQ to XML).
Alternatywnie, jeśli chcesz usunąć zestaw węzłów, zaleca się użycie Extensions.Remove metody . Ta metoda kopiuje węzły do listy, a następnie wykonuje iterację po liście, aby usunąć węzły.
Ta metoda spowoduje wywołanie zdarzeń Changed i Changing .
Obiekt XContainer przechowuje węzły podrzędne jako połączoną ze sobą listę XNode obiektów. Oznacza to, że Remove metoda musi przechodzić przez listę bezpośrednich węzłów podrzędnych w kontenerze nadrzędnym. W związku z tym użycie tej metody może mieć wpływ na wydajność.
Produkt | Wersje |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: