¿Le resultó útil esta página?
Sus comentarios sobre este contenido son muy importantes. Háganos saber su opinión.
¿Tiene comentarios adicionales?
Caracteres restantes: 1500
CreateAttributes (Método)
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.CreateAttributes (Método)

Devuelve un objeto XmlWriter utilizado para crear nuevos atributos en el elemento actual.

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

public virtual XmlWriter CreateAttributes()

Valor devuelto

Tipo: System.Xml.XmlWriter
Devuelve un objeto XmlWriter utilizado para crear nuevos atributos en el elemento actual.

ExcepciónCondición
InvalidOperationException

El XPathNavigator no está situado en ningún nodo de elemento.

NotSupportedException

El XPathNavigator no admite la edición.

A la hora de utilizar el método CreateAttributes, debe tener en cuenta las siguientes consideraciones:

  • Cuando XPathNavigator se coloca en un elemento, los nuevos atributos creados mediante el método XPathNavigator se colocan al final de la lista de atributos del elemento actual.

  • Los nuevos atributos no se insertan hasta que se llame al método Close del objeto XmlWriter.

  • Si el prefijo del espacio de nombres especificado es String.Empty o null, el prefijo del URI de espacio de nombres del nuevo atributo se obtiene a partir de los espacios de nombres actuales en el ámbito. Si no hay ningún prefijo de espacio de nombres asignado al URI de espacio de nombres especificado en el ámbito actual, se genera automáticamente un prefijo del espacio de nombres. Por ejemplo, para crear un nuevo atributo en un elemento del espacio de nombres predeterminado del archivo contosoBooks.xml, (xmlns="http://www.contoso.com/books"), se especifica null o String.Empty para los parámetros del prefijo y del URI de espacio de nombres. Si se especifica http://www.contoso.com/books como parámetro URI de espacio de nombres, el método CreateAttribute genera automáticamente un prefijo del espacio de nombres para el nuevo atributo.

  • Si el nuevo atributo creado es un nodo de espacio de nombres que entra en conflicto con una declaración de espacio de nombres en el elemento, porque otra declaración de espacio de nombres utiliza el prefijo de espacio de nombres elegido en el mismo ámbito o porque el prefijo elegido es igual que el del elemento pero está enlazado a otro URI de espacio de nombres, se producirá una excepción.

  • El objeto XmlWriter devuelto sólo se puede utilizar para crear atributos. Si se llama a otros métodos del objeto XmlWriter que no creen atributos, se produce una excepción.

  • El método CreateAttributes no afecta a la posición de XPathNavigator.

En el ejemplo siguiente, los nuevos atributos discount y currency se crean en el elemento secundario price del primer elemento book del archivo contosoBooks.xml utilizando el objeto XmlWriter que devuelve el método CreateAttributes.


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");

XmlWriter attributes = navigator.CreateAttributes();

attributes.WriteAttributeString("discount", "1.00");
attributes.WriteAttributeString("currency", "USD");
attributes.Close();

navigator.MoveToParent();
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:
© 2015 Microsoft