XmlReader.ReadElementContentAsObject Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
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
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 .