XPathNavigator.ValueType プロパティ
アセンブリ: System.Xml (system.xml.dll 内)


ValueType プロパティは、現在のノードの型指定された値の .NET Framework Type を取得します。
たとえば、xs:int 型の要素は、既定では Int32 の ValueType になります。ただし、ValueType は、Int16 や Double など、xs:int に割り当てることができる任意の有効な型である可能性があります。
ノードが型を持たない場合、xdt:untypedAtomic であるノードの型注釈と等価になります。この場合、ValueType プロパティはノードの文字列を返します。詳細については、「System.Xml クラスでの型のサポート」を参照してください。

contosoBooks.xml XML ファイルと contosoBooks.xsd XML スキーマ定義言語 (XSD: XML Schema Definition Language) スキーマを使用して、XPathNavigator オブジェクトを作成する例を次に示します。ValueType プロパティを使用して price 要素の型指定された値を表示し、次に、ValueAs メソッドを使用して文字列として返します。
' Create an XmlReaderSettings object with the contosoBooks.xsd schema. Dim settings As XmlReaderSettings = New XmlReaderSettings() settings.Schemas.Add("http://www.contoso.com/books", "contosoBooks.xsd") settings.ValidationType = ValidationType.Schema ' Create an XmlReader object with the contosoBooks.xml file and its schema. Dim reader As XmlReader = XmlReader.Create("contosoBooks.xml", settings) Dim document As XPathDocument = New XPathDocument(reader) Dim navigator As XPathNavigator = document.CreateNavigator() navigator.MoveToChild("bookstore", "http://www.contoso.com/books") navigator.MoveToChild("book", "http://www.contoso.com/books") navigator.MoveToChild("price", "http://www.contoso.com/books") ' Display the current type of the price element. Console.WriteLine(navigator.ValueType) ' Get the value of the price element as a string and display it. Dim price As String = navigator.ValueAs(GetType(String)) Console.WriteLine(price)
// Create an XmlReaderSettings object with the contosoBooks.xsd schema. XmlReaderSettings settings = new XmlReaderSettings(); settings.Schemas.Add("http://www.contoso.com/books", "contosoBooks.xsd"); settings.ValidationType = ValidationType.Schema; // Create an XmlReader object with the contosoBooks.xml file and its schema. XmlReader reader = XmlReader.Create("contosoBooks.xml", settings); XPathDocument document = new XPathDocument(reader); XPathNavigator navigator = document.CreateNavigator(); navigator.MoveToChild("bookstore", "http://www.contoso.com/books"); navigator.MoveToChild("book", "http://www.contoso.com/books"); navigator.MoveToChild("price", "http://www.contoso.com/books"); // Display the current type of the price element. Console.WriteLine(navigator.ValueType); // Get the value of the price element as a string and display it. string price = navigator.ValueAs(typeof(string)) as string; Console.WriteLine(price);
この例では、入力として、contosoBooks.xml というファイルを使用しています。
<bookstore xmlns="http://www.contoso.com/books"> <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0"> <title>The Autobiography of Benjamin Franklin</title> <author> <first-name>Benjamin</first-name> <last-name>Franklin</last-name> </author> <price>8.99</price> </book> <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2"> <title>The Confidence Man</title> <author> <first-name>Herman</first-name> <last-name>Melville</last-name> </author> <price>11.99</price> </book> <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6"> <title>The Gorgias</title> <author> <name>Plato</name> </author> <price>9.99</price> </book> </bookstore>
またこの例では、入力として、contosoBooks.xsd も使用しています。
<?xml version="1.0" encoding="utf-8"?> <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.contoso.com/books" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="bookstore"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string" /> <xs:element name="author"> <xs:complexType> <xs:sequence> <xs:element minOccurs="0" name="name" type="xs:string" /> <xs:element minOccurs="0" name="first-name" type="xs:string" /> <xs:element minOccurs="0" name="last-name" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="price" type="xs:decimal" /> </xs:sequence> <xs:attribute name="genre" type="xs:string" use="required" /> <xs:attribute name="publicationdate" type="xs:date" use="required" /> <xs:attribute name="ISBN" type="xs:string" use="required" /> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- XPathNavigator.ValueType プロパティのページへのリンク