XmlReader.ReadElementContentAsObject メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在の要素を読み取り、そのコンテンツを Object として返します。
オーバーロード
ReadElementContentAsObject() |
現在の要素を読み取り、そのコンテンツを Object として返します。 |
ReadElementContentAsObject(String, String) |
指定されたローカル名と名前空間 URI が現在の要素のものと一致することを確認し、現在の要素を読み取って、コンテンツを Object として返します。 |
ReadElementContentAsObject()
現在の要素を読み取り、そのコンテンツを 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
戻り値
最も適切な型のボックス化された共通言語ランタイム (CLR) オブジェクト。 ValueType プロパティは、適切な CLR 型を判断します。 内容がリスト型として型指定されている場合、このメソッドは適切な型のボックス化されたオブジェクトの配列を返します。
例外
XmlReader が要素に配置されません。
- または -
先行の非同期操作が完了する前に、XmlReader メソッドが呼び出されました。 この場合、「非同期操作が既に実行されています」というメッセージと共に InvalidOperationException がスローされます。
引数に null
を渡してメソッドが呼び出されました。
例
次の例では、このメソッドを使用してノードの内容を price
読み取います。 リーダーは、スキーマ内の情報を使用して、コンテンツを正しいデータ型にマップします。
// 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)
この例では、次の 2 つのファイルを入力として使用します。
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>
注釈
このメソッドは、開始タグ、要素の内容を読み取り、リーダーを終了要素タグの後に移動します。 エンティティを展開し、処理命令とコメントを無視します。 要素には、単純なコンテンツのみを含めることができます。 つまり、子要素を持つことはできません。
詳細については、リファレンス ページの XmlReader 「解説」セクションと W3C XML スキーマパート 2: データ型に関する推奨事項を 参照してください。
このメソッドの非同期バージョンについては、次を参照してください ReadElementContentAsObjectAsync。
適用対象
ReadElementContentAsObject(String, String)
指定されたローカル名と名前空間 URI が現在の要素のものと一致することを確認し、現在の要素を読み取って、コンテンツを 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
パラメーター
- localName
- String
要素のローカル名。
- namespaceURI
- String
要素の名前空間 URI。
戻り値
最も適切な型のボックス化された共通言語ランタイム (CLR) オブジェクト。 ValueType プロパティは、適切な CLR 型を判断します。 内容がリスト型として型指定されている場合、このメソッドは適切な型のボックス化されたオブジェクトの配列を返します。
例外
XmlReader が要素に配置されません。
- または -
先行の非同期操作が完了する前に、XmlReader メソッドが呼び出されました。 この場合、「非同期操作が既に実行されています」というメッセージと共に InvalidOperationException がスローされます。
引数に null
を渡してメソッドが呼び出されました。
指定されたローカル名と名前空間 URI は、現在読み取り中の要素と一致しません。
注釈
このメソッドは、開始タグ、要素の内容を読み取り、リーダーを終了要素タグの後に移動します。 エンティティを展開し、処理命令とコメントを無視します。 要素には、単純なコンテンツのみを含めることができます。 つまり、子要素を持つことはできません。
詳細については、リファレンス ページの XmlReader 「解説」セクションと W3C XML スキーマパート 2: データ型に関する推奨事項を 参照してください。