Exportar (0) Imprimir
Expandir todo
Expandir Minimizar
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

XPathNavigator.DeleteSelf (Método)

Elimina el nodo actual y sus nodos secundarios.

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

public virtual void DeleteSelf()

ExcepciónCondición
InvalidOperationException

XPathNavigator está colocado en un nodo que no se puede eliminar, como el nodo raíz o un nodo de espacio de nombres.

NotSupportedException

El XPathNavigator no admite la edición.

  • XPathNavigator se sitúa en el nodo primario del nodo eliminado cuando la eliminación se realiza correctamente.

  • Si el nodo eliminado es un nodo de texto que es el contenido de un elemento con tipo simple, el elemento pierde su información de tipo. Es decir, cuando se coloca en el elemento, las propiedades XmlType, ValueType y TypedValue tienen los valores null, String y Empty, respectivamente.

  • Los objetos XPathNavigator colocados sobre nodos eliminados antes de la eliminación pueden tener acceso a ellos. Sin embargo, no funcionarán los métodos que intenten desplazarse fuera del subárbol eliminado. Por ejemplo, los métodos MoveToParent y MoveToPrevious generan un error siempre que XPathNavigator se coloque sobre el nodo eliminado del nivel más alto. Se debe a que el nodo eliminado ya no está conectado al documento XML. De igual forma, el método MoveToNext genera un error siempre que XPathNavigator se coloque en el nodo eliminado del nivel más bajo.

En el ejemplo siguiente, el elemento price del primer elemento book del archivo contosoBooks.xml se elimina utilizando el método DeleteSelf. La posición del objeto XPathNavigator después de eliminar el elemento price está en el elemento book primario.


XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");

navigator.DeleteSelf();

Console.WriteLine("Position after delete: {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);


En el ejemplo, se toma el archivo contosoBooks.xml como entrada.


<?xml version="1.0" encoding="utf-8" ?>
<bookstore xmlns="http://www.contoso.com/books">
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
        <title>The Autobiography of Benjamin Franklin</title>
        <author>
            <first-name>Benjamin</first-name>
            <last-name>Franklin</last-name>
        </author>
        <price>8.99</price>
    </book>
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
        <title>The Confidence Man</title>
        <author>
            <first-name>Herman</first-name>
            <last-name>Melville</last-name>
        </author>
        <price>11.99</price>
    </book>
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
        <title>The Gorgias</title>
        <author>
            <name>Plato</name>
        </author>
        <price>9.99</price>
    </book>
</bookstore>


.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft