XmlReader.ReadElementContentAs メソッド

定義

現在の要素を読み込み、型指定されたオブジェクトとして内容を返します。

オーバーロード

ReadElementContentAs(Type, IXmlNamespaceResolver)

要素の内容を要求された型として返します。

ReadElementContentAs(Type, IXmlNamespaceResolver, String, String)

指定されたローカル名と名前空間 URI が現在の要素のものと一致することを確認し、要素の内容を要求された型として読み込みます。

ReadElementContentAs(Type, IXmlNamespaceResolver)

要素の内容を要求された型として返します。

public:
 virtual System::Object ^ ReadElementContentAs(Type ^ returnType, System::Xml::IXmlNamespaceResolver ^ namespaceResolver);
public virtual object ReadElementContentAs (Type returnType, System.Xml.IXmlNamespaceResolver namespaceResolver);
abstract member ReadElementContentAs : Type * System.Xml.IXmlNamespaceResolver -> obj
override this.ReadElementContentAs : Type * System.Xml.IXmlNamespaceResolver -> obj
Public Overridable Function ReadElementContentAs (returnType As Type, namespaceResolver As IXmlNamespaceResolver) As Object

パラメーター

returnType
Type

返される値の型。

.NET Framework 3.5 のリリースでは、returnType パラメーターの値に DateTimeOffset 型を指定できるようになりました。

namespaceResolver
IXmlNamespaceResolver

型変換に関連する名前空間プレフィックスの解決に使用される IXmlNamespaceResolver オブジェクト。

戻り値

Object

要求された型のオブジェクトに変換された要素の内容。

例外

XmlReader が要素に配置されません。

  • または -

先行の非同期操作が完了する前に、XmlReader メソッドが呼び出されました。 この場合、「非同期操作が既に実行されています」というメッセージと共に InvalidOperationException がスローされます。

現在の要素には、子要素が含まれています。

  • または -

要素のコンテンツを要求された型に変換できません。

引数に null を渡してメソッドが呼び出されました。

Decimal.MaxValue を読み取りました。

次の例では、このメソッドを ReadElementContentAs 使用してノードの内容を date 読み取います。

using (XmlReader reader = XmlReader.Create("dataFile.xml")) {
     reader.ReadToFollowing("date");
     DateTime date = (DateTime) reader.ReadElementContentAs(typeof(System.DateTime), null);
  
     // If the current culture is "en-US",
     // this writes "Wednesday, January 8, 2003".
     Console.WriteLine(date.ToLongDateString());	
}
Using reader As XmlReader = XmlReader.Create("dataFile.xml")
  reader.ReadToFollowing("date")
  Dim [date] As DateTime = CType(reader.ReadElementContentAs(GetType(System.DateTime), Nothing), DateTime)
            
  ' If the current culture is "en-US",
  ' this writes "Wednesday, January 8, 2003".
  Console.WriteLine([date].ToLongDateString())
End Using

この例は、dataFile.xml ファイルを入力として使用します。

<root>
  <stringValue>
     <!--comment-->
     <?some pi?>
      text value of the element.
  </stringValue>
  <longValue>270000000000001</longValue>
  <number>0</number>
  <double>2E10</double>
  <date>2003-01-08T15:00:00-00:00</date>
</root>

注釈

このメソッドは、開始タグ、要素の内容を読み取り、リーダーを終了要素タグの後に移動します。 エンティティを展開し、処理命令とコメントを無視します。 要素には、単純なコンテンツのみを含めることができます。 つまり、子要素を含めることはできません。

詳細については、リファレンス ページの XmlReader 「解説」セクションと W3C XML スキーマ パート 2: データ型に関する推奨事項を 参照してください。

このメソッドの非同期バージョンについては、次を参照してください ReadElementContentAsAsync

適用対象

ReadElementContentAs(Type, IXmlNamespaceResolver, String, String)

指定されたローカル名と名前空間 URI が現在の要素のものと一致することを確認し、要素の内容を要求された型として読み込みます。

public:
 virtual System::Object ^ ReadElementContentAs(Type ^ returnType, System::Xml::IXmlNamespaceResolver ^ namespaceResolver, System::String ^ localName, System::String ^ namespaceURI);
public virtual object ReadElementContentAs (Type returnType, System.Xml.IXmlNamespaceResolver namespaceResolver, string localName, string namespaceURI);
abstract member ReadElementContentAs : Type * System.Xml.IXmlNamespaceResolver * string * string -> obj
override this.ReadElementContentAs : Type * System.Xml.IXmlNamespaceResolver * string * string -> obj
Public Overridable Function ReadElementContentAs (returnType As Type, namespaceResolver As IXmlNamespaceResolver, localName As String, namespaceURI As String) As Object

パラメーター

returnType
Type

返される値の型。

.NET Framework 3.5 のリリースでは、returnType パラメーターの値に DateTimeOffset 型を指定できるようになりました。

namespaceResolver
IXmlNamespaceResolver

型変換に関連する名前空間プレフィックスの解決に使用される IXmlNamespaceResolver オブジェクト。

localName
String

要素のローカル名。

namespaceURI
String

要素の名前空間 URI。

戻り値

Object

要求された型のオブジェクトに変換された要素の内容。

例外

XmlReader が要素に配置されません。

  • または -

先行の非同期操作が完了する前に、XmlReader メソッドが呼び出されました。 この場合、「非同期操作が既に実行されています」というメッセージと共に InvalidOperationException がスローされます。

現在の要素には、子要素が含まれています。

  • または -

要素のコンテンツを要求された型に変換できません。

引数に null を渡してメソッドが呼び出されました。

指定されたローカル名と名前空間 URI は、現在読み取り中の要素と一致しません。

Decimal.MaxValue を読み取りました。

注釈

このメソッドは、開始タグ、要素の内容を読み取り、リーダーを終了要素タグの後に移動します。 エンティティを展開し、処理命令とコメントを無視します。 要素には、単純なコンテンツのみを含めることができます。 つまり、子要素を持つことはできません。

詳細については、リファレンス ページの XmlReader 「解説」セクションと W3C XML スキーマパート 2: データ型に関する推奨事項を 参照してください。

適用対象