.net Core Xml Serialization Example

4 min read Jun 03, 2024
.net Core Xml Serialization Example

Sérialisation XML avec .NET Core : Un exemple pratique

Introduction

La sérialisation XML est un processus qui convertit un objet .NET en une représentation XML. Cette représentation peut être stockée dans un fichier, transmise sur un réseau ou utilisée dans d'autres applications. .NET Core fournit des outils puissants pour la sérialisation et la désérialisation XML.

Exemple de Sérialisation XML avec .NET Core

Dans cet exemple, nous allons sérialiser un objet Customer en XML.

using System;
using System.IO;
using System.Xml.Serialization;

namespace XmlSerializationExample
{
    public class Customer
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Email { get; set; }
    }

    public class Program
    {
        static void Main(string[] args)
        {
            // Créer un objet Customer
            Customer customer = new Customer { Id = 1, Name = "John Doe", Email = "[email protected]" };

            // Sérialiser l'objet en XML
            XmlSerializer serializer = new XmlSerializer(typeof(Customer));
            using (StringWriter writer = new StringWriter())
            {
                serializer.Serialize(writer, customer);
                string xml = writer.ToString();

                Console.WriteLine(xml);
            }

            // Enregistrer le XML dans un fichier
            using (FileStream fs = new FileStream("customer.xml", FileMode.Create))
            {
                serializer.Serialize(fs, customer);
            }

            Console.WriteLine("Customer sérialisé en XML avec succès !");
        }
    }
}

Ce code crée un objet Customer avec des données de test et l'utilise pour créer une instance de XmlSerializer. La méthode Serialize est utilisée pour convertir l'objet en XML. Le XML peut être affiché sur la console ou enregistré dans un fichier.

Désérialisation XML avec .NET Core

La désérialisation XML est le processus inverse de la sérialisation. Elle prend une représentation XML et la convertit en un objet .NET.

using System;
using System.IO;
using System.Xml.Serialization;

namespace XmlSerializationExample
{
    // ... (Code de la classe Customer)

    public class Program
    {
        static void Main(string[] args)
        {
            // Désérialiser le XML en un objet Customer
            XmlSerializer serializer = new XmlSerializer(typeof(Customer));
            using (FileStream fs = new FileStream("customer.xml", FileMode.Open))
            {
                Customer customer = (Customer)serializer.Deserialize(fs);

                Console.WriteLine($"ID: {customer.Id}");
                Console.WriteLine($"Nom: {customer.Name}");
                Console.WriteLine($"Email: {customer.Email}");
            }

            Console.WriteLine("Customer désérialisé avec succès !");
        }
    }
}

Ce code ouvre le fichier customer.xml et utilise la méthode Deserialize de XmlSerializer pour convertir le XML en un objet Customer. Les données de l'objet peuvent ensuite être utilisées dans l'application.

Conclusion

La sérialisation XML est un outil puissant pour le stockage et la transmission de données dans les applications .NET Core. Les exemples ci-dessus illustrent les étapes de base de la sérialisation et de la désérialisation XML, offrant une base solide pour développer des applications qui utilisent ce format de données.

Related Post