XmlReader.ReadElementContentAsObject XmlReader.ReadElementContentAsObject XmlReader.ReadElementContentAsObject XmlReader.ReadElementContentAsObject Method

Definizione

Legge l'elemento corrente e restituisce il contenuto come Object.Reads the current element and returns the contents as an Object.

Overload

ReadElementContentAsObject() ReadElementContentAsObject() ReadElementContentAsObject() ReadElementContentAsObject()

Legge l'elemento corrente e restituisce il contenuto come Object.Reads the current element and returns the contents as an Object.

ReadElementContentAsObject(String, String) ReadElementContentAsObject(String, String) ReadElementContentAsObject(String, String) 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.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as an Object.

ReadElementContentAsObject() ReadElementContentAsObject() ReadElementContentAsObject() ReadElementContentAsObject()

Legge l'elemento corrente e restituisce il contenuto come Object.Reads the current element and returns the contents as an 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

Oggetto CLR (Common Language Runtime) boxed del tipo più appropriato.A boxed common language runtime (CLR) object of the most appropriate type. La proprietà ValueType determina il tipo CLR appropriato.The ValueType property determines the appropriate CLR type. Se il contenuto è tipizzato come tipo di elenco, il metodo restituisce una matrice di oggetti boxed del tipo appropriato.If the content is typed as a list type, this method returns an array of boxed objects of the appropriate type.

Eccezioni

L'oggetto XmlReader non è posizionato in corrispondenza di un elemento.The XmlReader is not positioned on an element.

In alternativa-or- È stato chiamato un metodo della classe XmlReader prima del completamento di un'operazione asincrona precedente.An XmlReader method was called before a previous asynchronous operation finished. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

L'elemento corrente contiene elementi figlio.The current element contains child elements.

In alternativa-or-

Il contenuto dell'elemento non può essere convertito nel tipo richiesto.The element content cannot be converted to the requested type

Il metodo è stato chiamato con argomenti null.The method is called with null arguments.

Esempi

L'esempio seguente usa il metodo per leggere il contenuto del price nodo.The following example uses the method to read the content of the price node. Il lettore utilizza le informazioni dello schema per eseguire il mapping del contenuto per il tipo di dati corretto.The reader uses the information in the schema to map the content to the correct data type.

// 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'esempio Usa i due file seguenti come input.The example uses the following two files as 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 di inizio, il contenuto dell'elemento e si sposta il lettore oltre il tag di fine dell'elemento.This method reads the start tag, the contents of the element, and moves the reader past the end element tag. Espande le entità e i commenti e istruzioni di elaborazione vengono ignorati.It expands entities and ignores processing instructions and comments. L'elemento può contenere solo contenuto semplice.The element can only contain simple content. Vale a dire, non può avere elementi figlio.That is, it cannot have child elements.

Per altre informazioni, vedere la sezione Osservazioni del XmlReader pagina di riferimento e il W3C XML Schema Part 2: Tipi di dati raccomandazione.For more information, see the Remarks section of the XmlReader reference page and the W3C XML Schema Part 2: Datatypes recommendation.

Per la versione asincrona di questo metodo, vedere ReadElementContentAsObjectAsync.For the asynchronous version of this method, see ReadElementContentAsObjectAsync.

ReadElementContentAsObject(String, String) ReadElementContentAsObject(String, String) ReadElementContentAsObject(String, String) 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.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as an 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 String String String

Nome locale dell'elemento.The local name of the element.

namespaceURI
String String String String

URI dello spazio dei nomi dell'elemento.The namespace URI of the element.

Restituisce

Oggetto CLR (Common Language Runtime) boxed del tipo più appropriato.A boxed common language runtime (CLR) object of the most appropriate type. La proprietà ValueType determina il tipo CLR appropriato.The ValueType property determines the appropriate CLR type. Se il contenuto è tipizzato come tipo di elenco, il metodo restituisce una matrice di oggetti boxed del tipo appropriato.If the content is typed as a list type, this method returns an array of boxed objects of the appropriate type.

Eccezioni

L'oggetto XmlReader non è posizionato in corrispondenza di un elemento.The XmlReader is not positioned on an element.

In alternativa-or- È stato chiamato un metodo della classe XmlReader prima del completamento di un'operazione asincrona precedente.An XmlReader method was called before a previous asynchronous operation finished. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

L'elemento corrente contiene elementi figlio.The current element contains child elements.

In alternativa-or-

Il contenuto dell'elemento non può essere convertito nel tipo richiesto.The element content cannot be converted to the requested type.

Il metodo è stato chiamato con argomenti null.The method is called with null arguments.

Il nome locale e l'URI dello spazio dei nomi specificati non corrispondono a quelli dell'elemento corrente da leggere.The specified local name and namespace URI do not match that of the current element being read.

Commenti

Questo metodo legge il tag di inizio, il contenuto dell'elemento e si sposta il lettore oltre il tag di fine dell'elemento.This method reads the start tag, the contents of the element, and moves the reader past the end element tag. Espande le entità e i commenti e istruzioni di elaborazione vengono ignorati.It expands entities and ignores processing instructions and comments. L'elemento può contenere solo contenuto semplice.The element can only contain simple content. Vale a dire, non può avere elementi figlio.That is, it cannot have child elements.

Per altre informazioni, vedere la sezione Osservazioni del XmlReader pagina di riferimento e il W3C XML Schema Part 2: Tipi di dati raccomandazione.For more information, see the Remarks section of the XmlReader reference page and the W3C XML Schema Part 2: Datatypes recommendation.

Si applica a