XmlReader.ReadSubtree Method ()
Returns a new XmlReader instance that can be used to read the current node, and all its descendants.
Assembly: System.Xml (in System.Xml.dll)
The XML reader isn't positioned on an element when this method is called.
Read method returns false. When the new XML reader has been closed, the original readeris positioned on the EndElement node of the sub-tree. Thus, if you called the method on the start tag of the book element, after the sub-tree has been read and the new XML reader has been closed, the original XML reader is positioned on the end tag of the book element.can be called only on element nodes. When the entire sub-tree has been read, calls to the
You should not perform any operations on the original reader until the new reader has been closed. This action is not supported and can result in unpredictable behavior.
Themethod isn't intended for creatingcopies of the XML data that you can work with independently. It's designedto create a boundary around an XML element. This is useful if you want to pass data to another component for processing and you wish to limit how much of your data the component can access. When you pass an XML reader returned by the method to another application, the application can access only that XML element, not the entire XML document.
The following example shows how to use themethod.
Use the following XML data to run the examples in this topic:
<?xml version="1.0" encoding="utf-8" ?> <Books> <Book> <Title>A Brief History of Time</Title> </Book> <Book> <Title>Principle Of Relativity</Title> </Book> <Book> <Title>Victory of Reason</Title> </Book> <Book> <Title>The Unicorn that did not Fail</Title> </Book> <Book> <Title>Rational Ontology</Title> </Book> <Book> <Title>The Meaning of Pizza</Title> </Book> </Books>
Available since 4.5
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Available since 8.1