Rumah > pembangunan bahagian belakang > C++ > Bagaimana cara deserialize XML ke dalam kelas C#?

Bagaimana cara deserialize XML ke dalam kelas C#?

Patricia Arquette
Lepaskan: 2025-02-02 17:26:13
asal
975 orang telah melayarinya

How to Deserialize XML into C# Classes?

C# xml Revitalisasi: Panduan Penuh

Latar Belakang:

revitalisasi merujuk kepada proses menukar data bersiri kembali ke format objek asalnya. Artikel ini menyediakan panduan lengkap untuk memperkenalkan cara membezakan dokumen XML ke dalam kelas C#yang menunjukkan struktur XML.

Proses Revitalisasi:

Tentukan struktur kelas: Buat kelas C#yang mencerminkan struktur dokumen XML. Gunakan

dan untuk memetakan elemen XML ke atribut kelas.
  1. [Serializable] Buat logik derivatif: [XmlElement] Melaksanakan kaedah, dan dokumen XML bersiri ke dalam contoh kelas
  2. .
[Serializable()]
public class Car
{
    [XmlElementAttribute("StockNumber")]
    public string StockNumber { get; set; }

    [XmlElementAttribute("Make")]
    public string Make { get; set; }

    [XmlElementAttribute("Model")]
    public string Model { get; set; }
}

[XmlRootAttribute("Cars", IsNullable = false)]
public class Cars
{
    [XmlArrayItem(typeof(Car))]
    public Car[] Car { get; set; }
}
Salin selepas log masuk
  1. <替> Kaedah alternatif: Cars Kaedah lain ialah menggunakan XSD (definisi mod XML) untuk menjana kelas C#yang mematuhi struktur XML.
public class CarSerializer
{
    public Cars Deserialize(string path)
    {
        // 读取XML文件
        XmlSerializer serializer = new XmlSerializer(typeof(Cars));
        using (StreamReader reader = new StreamReader(path))
        {
            // 将XML反序列化到Cars对象
            return (Cars)serializer.Deserialize(reader);
        }
    }
}
Salin selepas log masuk
simpan fail XML ke cakera sebagai

menghasilkan mod XSD:

menjana c#code:
  • foo.xml Ini akan mencipta , yang mengandungi kelas C#dengan struktur XML.
  • xsd foo.xml menggunakan pelaksanaan alternatif:
  • xsd foo.xsd /classes Melalui langkah -langkah di atas, anda boleh dengan mudah membedakan data XML ke dalam objek C#untuk memudahkan pemprosesan dan penggunaan berikutnya. Sila ambil perhatian bahawa
  • digantikan dengan laluan fail XML sebenar anda.

Atas ialah kandungan terperinci Bagaimana cara deserialize XML ke dalam kelas C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan