XmlNodeReader.MoveToElement Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Moves to the element that contains the current attribute node.
public:
override bool MoveToElement();
public override bool MoveToElement ();
override this.MoveToElement : unit -> bool
Public Overrides Function MoveToElement () As Boolean
Returns
true
if the reader is positioned on an attribute (the reader moves to the element that owns the attribute); false
if the reader is not positioned on an attribute (the position of the reader does not change).
Examples
The following example reads all the attributes on the root node.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlNodeReader^ reader = nullptr;
try
{
//Create and load the XML document.
XmlDocument^ doc = gcnew XmlDocument;
doc->LoadXml( "<book genre='novel' ISBN='1-861003-78' publicationdate='1987'> "
"</book>" );
//Load the XmlNodeReader
reader = gcnew XmlNodeReader( doc );
//Read the attributes on the root element.
reader->MoveToContent();
if ( reader->HasAttributes )
{
for ( int i = 0; i < reader->AttributeCount; i++ )
{
reader->MoveToAttribute( i );
Console::WriteLine( "{0} = {1}", reader->Name, reader->Value );
}
reader->MoveToElement();
}
}
finally
{
if ( reader != nullptr )
reader->Close();
}
}
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlNodeReader reader = null;
try
{
//Create and load the XML document.
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book genre='novel' ISBN='1-861003-78' publicationdate='1987'> " +
"</book>");
//Load the XmlNodeReader
reader = new XmlNodeReader(doc);
//Read the attributes on the root element.
reader.MoveToContent();
if (reader.HasAttributes){
for (int i=0; i<reader.AttributeCount; i++){
reader.MoveToAttribute(i);
Console.WriteLine("{0} = {1}", reader.Name, reader.Value);
}
//Return the reader to the book element.
reader.MoveToElement();
}
}
finally
{
if (reader != null)
reader.Close();
}
}
} // End class
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim reader As XmlNodeReader = Nothing
Try
'Create and load the XML document.
Dim doc As New XmlDocument()
doc.LoadXml("<book genre='novel' ISBN='1-861003-78' publicationdate='1987'> " & _
"</book>")
'Load the XmlNodeReader
reader = New XmlNodeReader(doc)
'Read the attributes on the root element.
reader.MoveToContent()
If reader.HasAttributes Then
Dim i As Integer
For i = 0 To reader.AttributeCount - 1
reader.MoveToAttribute(i)
Console.WriteLine("{0} = {1}", reader.Name, reader.Value)
Next i
'Return the reader to the book element.
reader.MoveToElement()
End If
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
Remarks
Note
In the .NET Framework 2.0, the recommended practice is to create XmlReader instances using the XmlReaderSettings class and the Create method. This allows you to take full advantage of all the new features introduced in the .NET Framework. For more information, see the Remarks section in the XmlReader reference page.
Use this method to return to an element after navigating through its attributes. This method moves the reader to one of the following node types: Element
, DocumentType
, or XmlDeclaration
.