XmlReader.ReadToDescendant Méthode

Définition

Avance XmlReader vers l'élément descendant correspondant suivant.

Surcharges

ReadToDescendant(String, String)

Avance XmlReader vers le nœud descendant suivant doté du nom local et de l'URI de l'espace de noms spécifiés.

ReadToDescendant(String)

Avance le XmlReader vers l'élément descendant suivant portant le nom qualifié spécifié.

ReadToDescendant(String, String)

Source:
XmlReader.cs
Source:
XmlReader.cs
Source:
XmlReader.cs

Avance XmlReader vers le nœud descendant suivant doté du nom local et de l'URI de l'espace de noms spécifiés.

public:
 virtual bool ReadToDescendant(System::String ^ localName, System::String ^ namespaceURI);
public virtual bool ReadToDescendant (string localName, string namespaceURI);
abstract member ReadToDescendant : string * string -> bool
override this.ReadToDescendant : string * string -> bool
Public Overridable Function ReadToDescendant (localName As String, namespaceURI As String) As Boolean

Paramètres

localName
String

Nom local de l'élément vers lequel se déplacer.

namespaceURI
String

URI de l'espace de noms de l'élément vers lequel se déplacer.

Retours

true si un élément descendant correspondant est trouvé ; sinon, false. Si un élément descendant correspondant est introuvable, le XmlReader est positionné sur la balise de fin (NodeType est XmlNodeType.EndElement) de l’élément.

Si XmlReader n'est pas placé sur un élément lorsque ReadToDescendant(String, String) est appelé, cette méthode retourne false et la position de XmlReader ne change pas.

Exceptions

Une méthode XmlReader a été appelée avant la fin d’une opération asynchrone précédente. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».

La valeur des deux paramètres est null.

S’applique à

ReadToDescendant(String)

Source:
XmlReader.cs
Source:
XmlReader.cs
Source:
XmlReader.cs

Avance le XmlReader vers l'élément descendant suivant portant le nom qualifié spécifié.

public:
 virtual bool ReadToDescendant(System::String ^ name);
public virtual bool ReadToDescendant (string name);
abstract member ReadToDescendant : string -> bool
override this.ReadToDescendant : string -> bool
Public Overridable Function ReadToDescendant (name As String) As Boolean

Paramètres

name
String

Nom qualifié de l'élément vers lequel se déplacer.

Retours

true si un élément descendant correspondant est trouvé ; sinon, false. Si un élément descendant correspondant est introuvable, le XmlReader est positionné sur la balise de fin (NodeType est XmlNodeType.EndElement) de l’élément.

Si XmlReader n'est pas placé sur un élément lorsque ReadToDescendant(String) est appelé, cette méthode retourne false et la position de XmlReader ne change pas.

Exceptions

Une méthode XmlReader a été appelée avant la fin d’une opération asynchrone précédente. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».

Le paramètre est une chaîne vide.

Exemples

L’exemple suivant analyse le deuxième nœud de livre.

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());
}
Using reader As XmlReader = 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
    Select Case reader.NodeType
      Case XmlNodeType.Element
        Console.Write("<{0}", reader.Name)
        While reader.MoveToNextAttribute()
            Console.Write(" {0}='{1}'", reader.Name, reader.Value)
        End While
        Console.Write(">")
      Case XmlNodeType.Text
        Console.Write(reader.Value)
      Case XmlNodeType.EndElement
        Console.Write("</{0}>", reader.Name)
    End Select
  Loop While reader.Read()

End Using

L’exemple utilise le fichier , 2books.xmlcomme entrée.

<!--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>

S’applique à