Export (0) Print
Expand All

XmlReader.ReadToDescendant Method (String)

Note: This method is new in the .NET Framework version 2.0.

Advances the XmlReader to the next descendant element with the specified qualified name.

Namespace: System.Xml
Assembly: System.Xml (in system.xml.dll)

public virtual bool ReadToDescendant (
	string name
)
public boolean ReadToDescendant (
	String name
)
public function ReadToDescendant (
	name : String
) : boolean

Parameters

name

The qualified name of the element you wish to move to.

Return Value

true if a matching descendant element is found; otherwise false. If a matching child element is not found, the XmlReader is positioned on the end tag (NodeType is XmlNodeType.EndElement) of the element. If the XmlReader is not positioned on an element when ReadToDescendant was called, this method returns false and the position of the XmlReader is not changed.

The following example parses the second book node.

using (XmlReader reader = XmlReader.Create("2books.xml")) {

  // Move the reader to the second book node.
  reader.MoveToContent(); 
  reader.ReadToDescendant("book");
  reader.Skip(); //Skip the first book.

  // Parse the file starting with the second book node.
  do {
     switch (reader.NodeType) {
        case XmlNodeType.Element:
           Console.Write("<{0}", reader.Name);
           while (reader.MoveToNextAttribute()) {
               Console.Write(" {0}='{1}'", reader.Name, reader.Value);
           }
           Console.Write(">");
           break;
        case XmlNodeType.Text:
           Console.Write(reader.Value);
           break;
        case XmlNodeType.EndElement:
           Console.Write("</{0}>", reader.Name);
           break;
     }       
  }  while (reader.Read());    

}

The example uses the file, 2books.xml, as input.

<!--sample XML fragment-->
<bookstore>
  <book genre='novel' ISBN='10-861003-324'>
    <title>The Handmaid's Tale</title>
    <price>19.95</price>
  </book>
  <book genre='novel' ISBN='1-861001-57-5'>
    <title>Pride And Prejudice</title>
    <price>24.95</price>
  </book>
</bookstore>

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0

.NET Compact Framework

Supported in: 2.0

Community Additions

ADD
Show:
© 2014 Microsoft