XNode.Remove Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odebere tento uzel z nadřazeného objektu.
public:
void Remove();
public void Remove ();
member this.Remove : unit -> unit
Public Sub Remove ()
Výjimky
Nadřazený objekt je null
.
Příklady
Následující příklad odebere uzel z nadřazeného objektu.
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)
Tento příklad vytvoří následující výstup:
<Root>
<Child1>child1 content</Child1>
<Child2>child2 content</Child2>
<Child4>child4 content</Child4>
<Child5>child5 content</Child5>
</Root>
Poznámky
V LINQ to XML programování byste při dotazování na uzly v této sadě neměli manipulovat se sadou uzlů ani je upravovat. V praxi to znamená, že byste neměli iterovat sadu uzlů a odebírat je. Místo toho byste je měli materializovat do List<T>ToList metody rozšíření. Pak můžete iterovat seznam a odebrat uzly. Další informace najdete v tématu Smíšené chyby deklarativního kódu nebo imperativního kódu (LINQ to XML).
Případně pokud chcete odebrat sadu uzlů, doporučujeme použít metodu Extensions.Remove . Tato metoda zkopíruje uzly do seznamu a pak iteruje seznam, aby se uzly odebraly.
Tato metoda vyvolá Changed události a Changing .
Ukládá XContainer podřízené uzly jako jednotlivě propojený seznam XNode objektů. To znamená, že Remove metoda musí procházet seznamem přímých podřízených uzlů v nadřazeného kontejneru. Proto použití této metody může ovlivnit výkon.