Heim >Backend-Entwicklung >C++ >Wie deserialisiere ich XML mit XmlSerializer in C# in Objekte?
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:
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>
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>
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!