XmlReader.ReadElementContentAsObject Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Odczytuje bieżący element i zwraca zawartość jako element Object.
Przeciążenia
ReadElementContentAsObject() |
Odczytuje bieżący element i zwraca zawartość jako element Object. |
ReadElementContentAsObject(String, String) |
Sprawdza, czy określona lokalna nazwa i identyfikator URI przestrzeni nazw są zgodne z bieżącym elementem, a następnie odczytuje bieżący element i zwraca zawartość jako Object. |
ReadElementContentAsObject()
Odczytuje bieżący element i zwraca zawartość jako element 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
Zwraca
Obiekt środowiska uruchomieniowego języka wspólnego (CLR, boxed common language runtime) najbardziej odpowiedniego typu. Właściwość ValueType określa odpowiedni typ CLR. Jeśli zawartość jest wpisywana jako typ listy, ta metoda zwraca tablicę obiektów skrzynkowych odpowiedniego typu.
Wyjątki
Element XmlReader nie jest umieszczony na elemecie .
-lub-
Metoda XmlReader została wywołana przed zakończeniem poprzedniej operacji asynchronicznej. W takim przypadku InvalidOperationException jest zgłaszany komunikat "Operacja asynchroniczna jest już w toku".
Bieżący element zawiera elementy podrzędne.
-lub-
Nie można przekonwertować zawartości elementu na żądany typ
Metoda jest wywoływana z null
argumentami.
Przykłady
W poniższym przykładzie użyto metody do odczytania zawartości węzła price
. Czytelnik używa informacji w schemacie do mapowania zawartości na prawidłowy typ danych.
// 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)
W przykładzie użyto następujących dwóch plików jako danych wejściowych.
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>
Uwagi
Ta metoda odczytuje tag startowy, zawartość elementu i przenosi czytnik obok tagu elementu końcowego. Rozszerza jednostki i ignoruje przetwarzanie instrukcji i komentarzy. Element może zawierać tylko prostą zawartość. Oznacza to, że nie może mieć elementów podrzędnych.
Aby uzyskać więcej informacji, zobacz sekcję Uwagi na stronie referencyjnej XmlReader i zalecenia W3C XML Schema Part 2: Datatypes (Schemat XML W3C— część 2: zalecenia dotyczące typów danych ).
Aby uzyskać asynchroniczną wersję tej metody, zobacz ReadElementContentAsObjectAsync.
Dotyczy
ReadElementContentAsObject(String, String)
Sprawdza, czy określona lokalna nazwa i identyfikator URI przestrzeni nazw są zgodne z bieżącym elementem, a następnie odczytuje bieżący element i zwraca zawartość jako 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
Parametry
- localName
- String
Lokalna nazwa elementu.
- namespaceURI
- String
Identyfikator URI przestrzeni nazw elementu.
Zwraca
Obiekt środowiska uruchomieniowego języka wspólnego (CLR, boxed common language runtime) najbardziej odpowiedniego typu. Właściwość ValueType określa odpowiedni typ CLR. Jeśli zawartość jest wpisywana jako typ listy, ta metoda zwraca tablicę obiektów skrzynkowych odpowiedniego typu.
Wyjątki
Element XmlReader nie jest umieszczony na elemecie .
-lub-
Metoda XmlReader została wywołana przed zakończeniem poprzedniej operacji asynchronicznej. W takim przypadku InvalidOperationException jest zgłaszany komunikat "Operacja asynchroniczna jest już w toku".
Bieżący element zawiera elementy podrzędne.
-lub-
Nie można przekonwertować zawartości elementu na żądany typ.
Metoda jest wywoływana z null
argumentami.
Określona nazwa lokalna i identyfikator URI przestrzeni nazw nie są zgodne z bieżącym elementem odczytywanym.
Uwagi
Ta metoda odczytuje tag startowy, zawartość elementu i przenosi czytnik obok tagu elementu końcowego. Rozszerza jednostki i ignoruje przetwarzanie instrukcji i komentarzy. Element może zawierać tylko prostą zawartość. Oznacza to, że nie może mieć elementów podrzędnych.
Aby uzyskać więcej informacji, zobacz sekcję Uwagi na stronie referencyjnej XmlReader i zalecenia W3C XML Schema Part 2: Datatypes (Schemat XML W3C— część 2: zalecenia dotyczące typów danych ).