Lire des données XML dans un jeu de données dans des applications .NET Framework
Article
Notes
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 :
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 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 :
private void ReadXmlButton_Click(object sender, EventArgs e)
{
string filePath = "Complete path where you saved the XML file";
AuthorsDataSet.ReadXml(filePath);
dataGridView1.DataSource = AuthorsDataSet;
dataGridView1.DataMember = "authors";
}
Private Sub ReadXmlButton_Click() Handles ReadXmlButton.Click
Dim filePath As String = "Complete path where you saved the XML file"
AuthorsDataSet.ReadXml(filePath)
DataGridView1.DataSource = AuthorsDataSet
DataGridView1.DataMember = "authors"
End Sub
Dans le code du gestionnaire d’événements ReadXMLButton_Click, remplacez l’entrée filepath = 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.
Private Sub ShowSchemaButton_Click() Handles ShowSchemaButton.Click
Dim swXML As New System.IO.StringWriter()
AuthorsDataSet.WriteXmlSchema(swXML)
TextBox1.Text = swXML.ToString
End Sub
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.
Créer une interface utilisateur avec la liaison de données. Votre interface utilisateur est automatiquement mise à jour en fonction des données les plus récentes, tandis que les données sont mises à jour suite aux modifications apportées à l’interface utilisateur.
Dans le développement d’applications .NET Framework avec Visual Studio, enregistrez un jeu de données ADO.NET en tant que XML. Accédez aux données XML d'un jeu de données en appelant les méthodes XML disponibles dans le jeu de données, par exemple GetXml ou WriteXml.
Découvrez comment ajouter du contenu à un DataSet ADO.NET à partir de XML. .NET Framework offre beaucoup de flexibilité en termes de charge et de structure du DataSet.