Lire des données XML dans un jeu de données dans des applications .NET Framework
Remarque
Les jeux de données et les classes associées sont des technologies .NET Framework héritées qui datent du début des années 2000. Elles permettent aux applications d’utiliser des données en mémoire pendant que les applications sont déconnectées de la base de données. Ces technologies sont particulièrement utiles aux applications qui permettent aux utilisateurs de modifier des données, et de rendre ces changements persistants dans la base de données. Même si les jeux de données sont une technologie très efficace, nous vous recommandons d’utiliser Entity Framework Core pour les nouvelles applications .NET. Entity Framework offre un moyen plus naturel d’utiliser des données tabulaires en tant que modèles objet. De plus, il présente une interface de programmation plus simple.
ADO.NET fournit des méthodes simples pour utiliser les données XML. Dans cette procédure pas à pas, vous créez une application Windows qui charge des données XML dans un jeu de données. Le jeu de données s’affiche ensuite dans un contrôle DataGridView. Enfin, un schéma XML basé sur le contenu du fichier XML s'affiche dans une zone de texte.
Prérequis
Pour terminer ce didacticiel, vous avez besoin de Visual Studio avec les charges de travail suivantes installées :
- Développement .NET Desktop
- Traitement et stockage de données
Pour les installer, ouvrez Visual Studio Installer et choisissez Modifier (ou Plus>Modifier) en regard de la version de Visual Studio que vous souhaitez modifier. Consultez Modifier Visual Studio.
Création d'un projet
Créez un projet application Windows Forms pour C# ou Visual Basic. Nommez le projet ReadingXML.
Générer le fichier XML à lire dans le jeu de données
Étant donné que cette procédure pas à pas se concentre sur la lecture de données XML dans un jeu de données, le contenu d’un fichier XML est fourni.
Dans le menu Projet, sélectionnez Ajouter un nouvel élément.
Sélectionnez Fichier XML, nommez le fichier authors.xml, puis sélectionnez Ajouter.
Le fichier XML est chargé dans le concepteur et il est prêt à être modifié.
Collez les données XML suivantes dans l’éditeur sous la déclaration XML :
<Authors_Table> <authors> <au_id>172-32-1176</au_id> <au_lname>White</au_lname> <au_fname>Johnson</au_fname> <phone>408 496-7223</phone> <address>10932 Bigge Rd.</address> <city>Menlo Park</city> <state>CA</state> <zip>94025</zip> <contract>true</contract> </authors> <authors> <au_id>213-46-8915</au_id> <au_lname>Green</au_lname> <au_fname>Margie</au_fname> <phone>415 986-7020</phone> <address>309 63rd St. #411</address> <city>Oakland</city> <state>CA</state> <zip>94618</zip> <contract>true</contract> </authors> <authors> <au_id>238-95-7766</au_id> <au_lname>Carson</au_lname> <au_fname>Cheryl</au_fname> <phone>415 548-7723</phone> <address>589 Darwin Ln.</address> <city>Berkeley</city> <state>CA</state> <zip>94705</zip> <contract>true</contract> </authors> <authors> <au_id>267-41-2394</au_id> <au_lname>Hunter</au_lname> <au_fname>Anne</au_fname> <phone>408 286-2428</phone> <address>22 Cleveland Av. #14</address> <city>San Jose</city> <state>CA</state> <zip>95128</zip> <contract>true</contract> </authors> <authors> <au_id>274-80-9391</au_id> <au_lname>Straight</au_lname> <au_fname>Dean</au_fname> <phone>415 834-2919</phone> <address>5420 College Av.</address> <city>Oakland</city> <state>CA</state> <zip>94609</zip> <contract>true</contract> </authors> </Authors_Table>
Dans le menu Fichier, sélectionnez Enregistrer authors.xml.
Créer l’interface utilisateur
L’interface utilisateur de cette application comprend les éléments suivants :
Contrôle DataGridView qui affiche le contenu du fichier XML en tant que données.
Contrôle TextBox qui affiche le schéma XML pour le fichier XML.
Deux contrôles Button.
Un bouton lit le fichier XML dans le jeu de données et l’affiche dans le contrôle DataGridView.
Un deuxième bouton extrait le schéma du jeu de données. Via StringWriter, il l’affiche dans le contrôle TextBox.
Pour ajouter des contrôles au formulaire
Ouvrir
Form1
en mode Création.À partir de la boîte à outils, faites glisser les contrôles suivants sur le formulaire :
Un contrôle DataGridView
Un contrôle TextBox
Deux contrôles Button
Définissez les propriétés suivantes :
Control Propriété Paramètre TextBox1
Multiline true
BarreDéfilement Vertical Button1
Nom ReadXmlButton
Texte Read XML
Button2
Nom ShowSchemaButton
Texte Show Schema
Créer le jeu de données qui reçoit les données XML
Dans cette étape, vous créez un jeu de données nommé authors
. Pour plus d’informations sur les jeux de données, consultez Outils de jeux de données dans Visual Studio.
Dans l’Explorateur de solutions, sélectionnez le fichier source pour Form1, puis sélectionnez le bouton Concepteur de vues dans la barre d’outils Explorateur de solutions.
Dans la Boîte à outils, onglet Données, faites glisser un DataSet sur Form1.
Dans la boîte de dialogue Ajouter un jeu de données, sélectionnez Jeu de données non typé, puis sélectionnez OK.
DataSet1 est ajouté à la barre d’état des composants.
Dans la fenêtre Propriétés, définissez les propriétés Nom et DataSetName pour
AuthorsDataSet
.
Créer le gestionnaire d’événements pour lire le fichier XML dans le jeu de données
Le bouton Lire XML lit le fichier XML dans le jeu de données. Il définit ensuite les propriétés sur le contrôle DataGridView qui le lient au jeu de données.
Dans l’Explorateur de solutions, sélectionnez Form1, puis sélectionnez le bouton Concepteur de vues dans la barre d’outils Explorateur de solutions.
Double-cliquez sur le bouton Lire XML.
L’éditeur de code s’ouvre au niveau du gestionnaire d’événements
ReadXmlButton_Click
.Tapez le code suivant dans le gestionnaire d’événements
ReadXmlButton_Click
:Dans le code du gestionnaire d’événements
ReadXMLButton_Click
, remplacez l’entréefilepath =
par le chemin correct.
Créer le gestionnaire d’événements pour afficher le schéma dans la zone de texte
Le bouton Afficher le schéma crée un objet StringWriter qui est rempli avec le schéma et qui s’affiche dans le contrôle TextBox.
Dans l’Explorateur de solutions, sélectionnez Form1, puis sélectionnez le bouton Concepteur de vues.
Double-cliquez sur le bouton Afficher le schéma.
L’éditeur de code s’ouvre au niveau du gestionnaire d’événements
ShowSchemaButton_Click
.Collez le code suivant dans le gestionnaire d’événements
ShowSchemaButton_Click
.
Tester le formulaire
Vous pouvez maintenant tester le formulaire pour vous assurer qu’il se comporte comme prévu.
Sélectionnez F5 pour exécuter l’application.
Sélectionnez le bouton Lire XML.
DataGridView affiche le contenu du fichier XML.
Sélectionnez le bouton Afficher le schéma.
La zone de texte affiche le schéma XML pour le fichier XML.
Étapes suivantes
Cette procédure pas à pas présente les bases de la lecture d’un fichier XML dans un jeu de données, ainsi que la création d’un schéma basé sur le contenu du fichier XML. Voici quelques tâches que vous effectuerez peut-être ensuite :
Modifiez les données du jeu de données et réécrivez-les au format XML. Pour plus d’informations, consultez WriteXml.
Modifiez les données du jeu de données et écrivez-les dans une base de données.