Condividi tramite


XmlReader.ReadElementContentAsObject Metodo

Definizione

Legge l'elemento corrente e restituisce il contenuto come Object.

Overload

ReadElementContentAsObject()

Legge l'elemento corrente e restituisce il contenuto come Object.

ReadElementContentAsObject(String, String)

Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come oggetto Object.

ReadElementContentAsObject()

Legge l'elemento corrente e restituisce il contenuto come 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

Restituisce

Object

Oggetto CLR (Common Language Runtime) boxed del tipo più appropriato. La proprietà ValueType determina il tipo CLR appropriato. Se il contenuto è tipizzato come tipo di elenco, il metodo restituisce una matrice di oggetti boxed del tipo appropriato.

Eccezioni

L'oggetto XmlReader non è posizionato in corrispondenza di un elemento.

-oppure-

È stato chiamato un metodo della classe XmlReader prima del completamento di un'operazione asincrona precedente. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".

L'elemento corrente contiene elementi figlio.

-oppure-

Il contenuto dell'elemento non può essere convertito nel tipo richiesto.

Il metodo è stato chiamato con argomenti null.

Esempio

Nell'esempio price seguente viene usato il metodo per leggere il contenuto del nodo. Il lettore usa le informazioni nello schema per eseguire il mapping del contenuto al tipo di dati corretto.

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

Nell'esempio vengono usati i due file seguenti come input.

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>

Commenti

Questo metodo legge il tag iniziale, il contenuto dell'elemento e sposta il lettore oltre il tag dell'elemento finale. Espande le entità e ignora le istruzioni di elaborazione e i commenti. L'elemento può contenere solo contenuto semplice. Ovvero, non può avere elementi figlio.

Per altre informazioni, vedere la sezione Osservazioni della XmlReader pagina di riferimento e la raccomandazione W3C XML Schema Part 2: Datatypes .

Per la versione asincrona di questo metodo, vedere ReadElementContentAsObjectAsync.

Si applica a

ReadElementContentAsObject(String, String)

Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come oggetto 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

Parametri

localName
String

Nome locale dell'elemento.

namespaceURI
String

URI dello spazio dei nomi dell'elemento.

Restituisce

Object

Oggetto CLR (Common Language Runtime) boxed del tipo più appropriato. La proprietà ValueType determina il tipo CLR appropriato. Se il contenuto è tipizzato come tipo di elenco, il metodo restituisce una matrice di oggetti boxed del tipo appropriato.

Eccezioni

L'oggetto XmlReader non è posizionato in corrispondenza di un elemento.

-oppure-

È stato chiamato un metodo della classe XmlReader prima del completamento di un'operazione asincrona precedente. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".

L'elemento corrente contiene elementi figlio.

-oppure-

Il contenuto dell'elemento non può essere convertito nel tipo richiesto.

Il metodo è stato chiamato con argomenti null.

Il nome locale e l'URI dello spazio dei nomi specificati non corrispondono a quelli dell'elemento corrente da leggere.

Commenti

Questo metodo legge il tag iniziale, il contenuto dell'elemento e sposta il lettore oltre il tag dell'elemento finale. Espande le entità e ignora le istruzioni di elaborazione e i commenti. L'elemento può contenere solo contenuto semplice. Ovvero, non può avere elementi figlio.

Per altre informazioni, vedere la sezione Osservazioni della XmlReader pagina di riferimento e la raccomandazione W3C XML Schema Part 2: Datatypes .

Si applica a