Heim >Backend-Entwicklung >C++ >Wie deserialisiere ich XML mit XmlSerializer in C# in Objekte?

Wie deserialisiere ich XML mit XmlSerializer in C# in Objekte?

Linda Hamilton
Linda HamiltonOriginal
2025-01-15 16:06:44487Durchsuche

How to Deserialize XML into Objects using XmlSerializer in C#?

Verwenden Sie C# XmlSerializer, um XML in Objekte zu deserialisieren

In diesem Artikel wird erläutert, wie Sie die XmlSerializer-Klasse von C# verwenden, um XML-Daten in Objekte zu deserialisieren. Dazu müssen Sie eine C#-Klasse definieren, die der XML-Struktur entspricht. Die Schritte sind wie folgt:

  1. Erstellen Sie eine passende Klassenstruktur:

Erstellen Sie zunächst eine Klasse, die dem XML-Stammelement entspricht. Wenn das Stammelement von XML beispielsweise <StepList> ist, erstellen Sie eine Klasse mit dem Namen StepList:

<code class="language-csharp">[XmlRoot("StepList")]
public class StepList
{
    // ...
}</code>
  1. Attribute hinzufügen:

Als nächstes fügen Sie der Klasse für jedes untergeordnete Element im XML die entsprechenden Attribute hinzu. Verwenden Sie das Attribut XmlElement, um Elementnamen anzugeben. Zum Beispiel:

<code class="language-csharp">public class Step
{
    [XmlElement("Name")]
    public string Name { get; set; }

    [XmlElement("Desc")]
    public string Desc { get; set; }
}</code>
  1. Deserialisieren mit XmlSerializer:

Verwenden Sie abschließend XmlSerializer, um das XML in ein Objekt zu deserialisieren:

<code class="language-csharp">XmlSerializer serializer = new XmlSerializer(typeof(StepList));
using (TextReader reader = new StringReader(xmlString)) // xmlString 为您的XML字符串
{
    StepList result = (StepList)serializer.Deserialize(reader);
}</code>

Basierend auf dem bereitgestellten XML-Beispiel sieht eine geeignete Klassenstruktur wie folgt aus:

<code class="language-csharp">[XmlRoot("StepList")]
public class StepList
{
    [XmlElement("Step")]
    public List<Step> Steps { get; set; }
}

public class Step
{
    [XmlElement("Name")]
    public string Name { get; set; }

    [XmlElement("Desc")]
    public string Desc { get; set; }
}</code>

Durch die oben genannten Schritte können Sie XML-Daten problemlos C#-Objekten zuordnen, um die anschließende Verarbeitung und Verwendung zu erleichtern.

Das obige ist der detaillierte Inhalt vonWie deserialisiere ich XML mit XmlSerializer in C# in Objekte?. 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