Partager via


Procédure : créer une arborescence à partir d'un XmlReader

Mise à jour : November 2007

Cette rubrique montre comment créer une arborescence XML directement à partir d'un objet XmlReader. Pour créer un objet XElement à partir d'un objet XmlReader, vous devez placer l'objet XmlReader sur un nœud d'élément. L'objet XmlReader ignorera les commentaires et les instructions de traitement, mais si l'objet XmlReader est placé sur un nœud de texte, une erreur sera renvoyée. Pour éviter de telles erreurs, placez toujours l'objet XmlReader sur un élément avant de créer une arborescence XML à partir de l'objet XmlReader.

Exemple

Cet exemple utilise le document XML suivant : Exemple de fichiers XML : Livres (LINQ to XML).

Le code suivant crée un objet T:System.Xml.XmlReader, puis il lit les nœuds jusqu'à trouver le premier nœud d'élément. Il charge ensuite l'objet XElement.

XmlReader r = XmlReader.Create("books.xml");
while (r.NodeType != XmlNodeType.Element)
    r.Read();
XElement e = XElement.Load(r);
Console.WriteLine(e);
Dim r As XmlReader = XmlReader.Create("books.xml")
Do While r.NodeType <> XmlNodeType.Element
    r.Read()
Loop
Dim e As XElement = XElement.Load(r)
Console.WriteLine(e)

Cet exemple produit la sortie suivante :

<Catalog>
   <Book id="bk101">
      <Author>Garghentini, Davide</Author>
      <Title>XML Developer's Guide</Title>
      <Genre>Computer</Genre>
      <Price>44.95</Price>
      <PublishDate>2000-10-01</PublishDate>
      <Description>An in-depth look at creating applications 
      with XML.</Description>
   </Book>
   <Book id="bk102">
      <Author>Garcia, Debra</Author>
      <Title>Midnight Rain</Title>
      <Genre>Fantasy</Genre>
      <Price>5.95</Price>
      <PublishDate>2000-12-16</PublishDate>
      <Description>A former architect battles corporate zombies, 
      an evil sorceress, and her own childhood to become queen 
      of the world.</Description>
   </Book>
</Catalog>

Voir aussi

Concepts

Analyse de code XML