XNode.Remove (Método) (System.Xml.Linq)

Cambiar vista:
Sin script
Biblioteca de clases de .NET Framework
XNode.Remove (Método)

Actualización: noviembre 2007

Quita este nodo de su elemento primario.

Espacio de nombres:  System.Xml.Linq
Ensamblado:  System.Xml.Linq (en System.Xml.Linq.dll)
Sintaxis

Visual Basic (Declaración)
Public Sub Remove
Visual Basic (Uso)
Dim instance As XNode

instance.Remove()
C#
public void Remove()
Visual C++
public:
void Remove()
J#
public void Remove()
JScript
public function Remove()
Excepciones

Excepción Condición
InvalidOperationException

El valor del elemento primario es null.

Comentarios

Para la programación en LINQ to XML, no debe manipular o modificar un conjunto de nodos cuando esté consultando los nodos de ese conjunto. En términos prácticos, esto significa que no debe recorrer en iteración un conjunto de nodos y quitarlos. En su lugar, debe materializarlos en List<T> mediante el método de extensión ToList<TSource>. A continuación, puede recorrer en iteración la lista para quitar los nodos. Para obtener más información, consulte Errores en códigos declarativos/imperativos mixtos (C#) (LINQ to XML).

Alternativamente, si desea quitar un conjunto de nodos, se recomienda que use el método Extensions.Remove. Este método copia los nodos en una lista y, a continuación, recorre en iteración la lista para quitar los nodos.

Este método provocará los eventos Changed y Changing.

Ejemplos

En el ejemplo siguiente se quita un nodo del nodo primario.

C#
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);
Visual Basic
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)

Este ejemplo produce el siguiente resultado:

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

Windows Vista, Windows XP SP2, Windows Server 2003, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión

.NET Framework

Compatible con: 3.5

.NET Compact Framework

Compatible con: 3.5
Vea también

Referencia

Otros recursos