Compartir vía


XmlReader.ReadElementContentAsObject Método

Definición

Lee el elemento actual y devuelve el contenido como objeto Object.

Sobrecargas

ReadElementContentAsObject()

Lee el elemento actual y devuelve el contenido como objeto Object.

ReadElementContentAsObject(String, String)

Comprueba que el nombre local especificado y el URI del espacio de nombres coinciden con los del elemento actual y, a continuación, lee este elemento y devuelve el contenido como objeto Object.

ReadElementContentAsObject()

Lee el elemento actual y devuelve el contenido como objeto Object.

public:
 virtual System::Object ^ ReadElementContentAsObject();
public virtual object ReadElementContentAsObject ();
abstract member ReadElementContentAsObject : unit -> obj
override this.ReadElementContentAsObject : unit -> obj
Public Overridable Function ReadElementContentAsObject () As Object

Devoluciones

Object

Objeto de Common Language Runtime (CLR) del tipo más adecuado al que se le ha aplicado la conversión boxing. La propiedad ValueType determina el tipo CLR adecuado. Si el contenido se escribe como tipo de lista, este método devuelve una matriz de objetos del tipo adecuado a los que se les ha aplicado la conversión boxing.

Excepciones

El XmlReader no está situado en ningún elemento.

o bien

Se llamó un método XmlReader antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

El elemento actual contiene elementos secundarios.

o bien

El contenido del elemento no se puede convertir en el tipo solicitado.

Se llama al método con argumentos null.

Ejemplos

En el ejemplo siguiente se usa el método para leer el contenido del price nodo. El lector usa la información del esquema para asignar el contenido al tipo de datos correcto.

// Create a validating reader.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.Schema;
settings.Schemas.Add("urn:items", "item.xsd");	
 XmlReader reader = XmlReader.Create("item.xml", settings);

// Get the CLR type of the price element.
reader.ReadToFollowing("price");
Console.WriteLine(reader.ValueType);

// Return the value of the price element as Decimal object.
Decimal price = (Decimal) reader.ReadElementContentAsObject();

// Add 2.50 to the price.
price = Decimal.Add(price, 2.50m);
' Create a validating reader.
Dim settings As New XmlReaderSettings()
settings.ValidationType = ValidationType.Schema
settings.Schemas.Add("urn:items", "item.xsd")
Dim reader As XmlReader = XmlReader.Create("item.xml", settings)
      
' Get the CLR type of the price element. 
reader.ReadToFollowing("price")
Console.WriteLine(reader.ValueType)
      
' Return the value of the price element as Decimal object.
Dim price As [Decimal] = CType(reader.ReadElementContentAsObject(), [Decimal])
      
' Add 2.50 to the price.
price = [Decimal].Add(price, 2.5D)

En el ejemplo se usan los dos archivos siguientes como entrada.

item.xml

<item xmlns="urn:items" productID='123098'>
 <name>hammer</name>
 <price>9.95</price>
 <supplierID>1929</supplierID>
</item>

item.xsd

<?xml version="1.0"?>
<xs:schema xmlns:tns="urn:items" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:items" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="item">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="name" type="xs:string" />
        <xs:element name="price" type="xs:decimal" />
        <xs:element name="supplierID" type="xs:unsignedShort" />
      </xs:sequence>
      <xs:attribute name="productID" type="xs:unsignedInt" use="required" />
    </xs:complexType>
  </xs:element>
</xs:schema>

Comentarios

Este método lee la etiqueta de inicio, el contenido del elemento y mueve el lector más allá de la etiqueta de elemento final. Expande las entidades y omite las instrucciones de procesamiento y los comentarios. El elemento solo puede contener contenido simple. Es decir, no puede tener elementos secundarios.

Para obtener más información, vea la sección Comentarios de la XmlReader página de referencia y la recomendación W3C XML Schema Part 2: Datatypes .

Para obtener la versión asincrónica de este método, vea ReadElementContentAsObjectAsync.

Se aplica a

ReadElementContentAsObject(String, String)

Comprueba que el nombre local especificado y el URI del espacio de nombres coinciden con los del elemento actual y, a continuación, lee este elemento y devuelve el contenido como objeto Object.

public:
 virtual System::Object ^ ReadElementContentAsObject(System::String ^ localName, System::String ^ namespaceURI);
public virtual object ReadElementContentAsObject (string localName, string namespaceURI);
abstract member ReadElementContentAsObject : string * string -> obj
override this.ReadElementContentAsObject : string * string -> obj
Public Overridable Function ReadElementContentAsObject (localName As String, namespaceURI As String) As Object

Parámetros

localName
String

Nombre local del elemento.

namespaceURI
String

Identificador URI de espacio de nombres del elemento.

Devoluciones

Object

Objeto de Common Language Runtime (CLR) del tipo más adecuado al que se le ha aplicado la conversión boxing. La propiedad ValueType determina el tipo CLR adecuado. Si el contenido se escribe como tipo de lista, este método devuelve una matriz de objetos del tipo adecuado a los que se les ha aplicado la conversión boxing.

Excepciones

El XmlReader no está situado en ningún elemento.

o bien

Se llamó un método XmlReader antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

El elemento actual contiene elementos secundarios.

o bien

El contenido del elemento no se puede convertir en el tipo solicitado.

Se llama al método con argumentos null.

El nombre local y el identificador URI del espacio de nombres especificados no coinciden con los del elemento que se está leyendo.

Comentarios

Este método lee la etiqueta de inicio, el contenido del elemento y mueve el lector más allá de la etiqueta de elemento final. Expande las entidades y omite las instrucciones de procesamiento y los comentarios. El elemento solo puede contener contenido simple. Es decir, no puede tener elementos secundarios.

Para obtener más información, vea la sección Comentarios de la XmlReader página de referencia y la recomendación W3C XML Schema Part 2: Datatypes .

Se aplica a