Partager via


XmlReader.ReadElementContentAsObject Méthode

Définition

Lit l'élément actuel et retourne le contenu en tant que Object.

Surcharges

ReadElementContentAsObject()

Lit l'élément actuel et retourne le contenu en tant que Object.

ReadElementContentAsObject(String, String)

Vérifie que le nom local et l'URI de l'espace de noms spécifiés correspondent à ceux de l'élément actuel, puis lit l'élément actuel et retourne le contenu en tant qu'objet Object.

ReadElementContentAsObject()

Lit l'élément actuel et retourne le contenu en tant que 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

Retours

Object

Objet CLR boxed du type le plus approprié. La propriété ValueType détermine le type CLR approprié. Si le contenu est de type liste, cette méthode retourne un tableau d'objets boxed du type approprié.

Exceptions

XmlReader n'est pas placé sur un élément.

  • ou -

Une méthode XmlReader a été appelée avant la fin d’une opération asynchrone précédente. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».

L'élément en cours contient des éléments enfants.

  • ou -

Impossible de convertir le contenu de l'élément en type demandé

La méthode est appelée avec des arguments null.

Exemples

L’exemple suivant utilise la méthode pour lire le contenu du price nœud. Le lecteur utilise les informations du schéma pour mapper le contenu au type de données correct.

// 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)

L’exemple utilise les deux fichiers suivants comme entrée.

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>

Remarques

Cette méthode lit la balise de début, le contenu de l’élément et déplace le lecteur au-delà de la balise d’élément de fin. Il développe les entités et ignore les instructions de traitement et les commentaires. L’élément ne peut contenir que du contenu simple. Autrement dit, il ne peut pas avoir d’éléments enfants.

Pour plus d’informations, consultez la section Notes de la XmlReader page de référence et la recommandation W3C XML Schema Part 2: Datatypes .

Pour obtenir la version asynchrone de cette méthode, consultez ReadElementContentAsObjectAsync.

S’applique à

ReadElementContentAsObject(String, String)

Vérifie que le nom local et l'URI de l'espace de noms spécifiés correspondent à ceux de l'élément actuel, puis lit l'élément actuel et retourne le contenu en tant qu'objet 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

Paramètres

localName
String

Le nom local de l'élément.

namespaceURI
String

L'URI de l'espace de noms de l'élément.

Retours

Object

Objet CLR boxed du type le plus approprié. La propriété ValueType détermine le type CLR approprié. Si le contenu est de type liste, cette méthode retourne un tableau d'objets boxed du type approprié.

Exceptions

XmlReader n'est pas placé sur un élément.

  • ou -

Une méthode XmlReader a été appelée avant la fin d’une opération asynchrone précédente. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».

L'élément en cours contient des éléments enfants.

  • ou -

Impossible de convertir le contenu de l'élément en type demandé.

La méthode est appelée avec des arguments null.

Le nom local et l'URI de l'espace de noms spécifiés ne correspondent pas à l'élément actuel lu.

Remarques

Cette méthode lit la balise de début, le contenu de l’élément et déplace le lecteur au-delà de la balise d’élément de fin. Il développe les entités et ignore les instructions de traitement et les commentaires. L’élément ne peut contenir que du contenu simple. Autrement dit, il ne peut pas avoir d’éléments enfants.

Pour plus d’informations, consultez la section Notes de la XmlReader page de référence et la recommandation W3C XML Schema Part 2: Datatypes .

S’applique à