XNode.Remove Yöntem

Tanım

Bu düğümü üst öğesinden kaldırır.

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

Özel durumlar

Üst öğedir null.

Örnekler

Aşağıdaki örnek, bir düğümü üst öğesinden kaldırır.

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)

Bu örnek aşağıdaki çıkışı oluşturur:

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

Açıklamalar

LINQ to XML programlamasında, bu kümedeki düğümleri sorgularken bir düğüm kümesini işlememeli veya değiştirmemelisiniz. Pratikte bu, bir dizi düğüm üzerinde yineleme yapıp bunları kaldırmamanız gerektiği anlamına gelir. Bunun yerine, uzantı yöntemini kullanarak bunları bir List<T> içinde ToList gerçekleştirmeniz gerekir. Ardından, düğümleri kaldırmak için listede yineleyebilirsiniz. Daha fazla bilgi için bkz. Karma Bildirim Temelli Kod/Kesinlik Temelli Kod Hataları (LINQ to XML).

Alternatif olarak, bir düğüm kümesini kaldırmak istiyorsanız yöntemini kullanmanız Extensions.Remove önerilir. Bu yöntem, düğümleri bir listeye kopyalar ve ardından düğümleri kaldırmak için listenin üzerinde yinelenir.

Bu yöntem ve olaylarını ChangedChanging oluşturur.

alt XContainer düğümlerini nesnelerin tek bağlantılı bir listesi XNode olarak depolar. Bu, yöntemin Remove üst kapsayıcı altındaki doğrudan alt düğümler listesinden geçmesi gerektiği anlamına gelir. Bu nedenle, bu yöntemin kullanılması performansınızı etkileyebilir.

Şunlara uygulanır

Ayrıca bkz.