Heim >Backend-Entwicklung >C++ >Wie kann ich XML in C# -Klassen deserialisieren?

Wie kann ich XML in C# -Klassen deserialisieren?

Patricia Arquette
Patricia ArquetteOriginal
2025-02-02 17:26:13976Durchsuche

How to Deserialize XML into C# Classes?

C# xml Revitalisierung: Vollständiges Handbuch

Hintergrund:

Revitalisierung bezieht sich auf den Prozess der Konvertierung serialisierter Daten in das ursprüngliche Objektformat. Dieser Artikel enthält einen vollständigen Leitfaden, um das Erkennen des XML -Dokuments in eine benutzerdefinierte C#-Klasse einzuführen, die die XML -Struktur angibt.

Revitalisierungsprozess:

Definieren Sie die Klassenstruktur: c#-Klass, die die XML -Dokumentstruktur widerspiegelt. Verwenden Sie

und , um das XML -Element dem Klassenattribut zuzuordnen.
  1. [Serializable] Erstellen Sie eine derivative Logik: [XmlElement] Implementieren Sie eine Methode, und das XML -Dokument wird in die Instanz der
  2. -Klasse serialisiert.
<code class="language-csharp">[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; }
}</code>
  1. Alternative Methode: Cars Eine andere Methode ist die Verwendung von XSD (XML -Modus -Definition), um eine C#-Klasse zu generieren, die der XML -Struktur entspricht.
<code class="language-csharp">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);
        }
    }
}</code>
Speichern Sie die XML -Datei auf der Festplatte als

auf der Festplatte XSD -Modus generieren:

C#Code generieren:
  • foo.xml Dies erstellt , das die C#-Klasse mit der XML -Struktur enthält.
  • xsd foo.xml Verwendung Alternative Implementierung:
  • xsd foo.xsd /classes Durch die obigen Schritte können Sie die XML -Daten in das C#-Objekt leicht zerlegen, um die nachfolgende Verarbeitung und Verwendung zu erleichtern. Bitte beachten Sie, dass
  • durch Ihren tatsächlichen XML -Dateipfad ersetzt wird.

Das obige ist der detaillierte Inhalt vonWie kann ich XML in C# -Klassen deserialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn