Esta documentación está archivada y no tiene mantenimiento.

XmlReader.ReadElementContentAsObject (Método) ()

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

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

public virtual Object ReadElementContentAsObject ()
public Object ReadElementContentAsObject ()
public function ReadElementContentAsObject () : Object
No aplicable.

Valor devuelto

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.

Tipo de excepciónCondición

InvalidOperationException

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

XmlException

El elemento actual contiene elementos secundarios.

O bien,

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

ArgumentNullException

Se llama al método con argumentos referencia null (Nothing en Visual Basic).

Este método lee la etiqueta de apertura, el contenido del elemento y coloca el lector detrás de la etiqueta de cierre del elemento. Expande las entidades y omite las instrucciones de procesamiento y los comentarios. El elemento sólo puede contener contenido sencillo. Es decir, no puede tener elementos secundarios.

Para obtener más información, vea el documento Lectura de datos de tipo y la recomendación W3C XML Schema Part 2: Datatypes (en inglés).

En el ejemplo siguiente, se utiliza el método para leer el contenido del nodo price. El lector utiliza 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);


En el ejemplo se utilizan 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>

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0

.NET Compact Framework

Compatible con: 2.0

XNA Framework

Compatible con: 1.0
Mostrar: