Conversion de données XML en objets C# avec XmlSerializer
Ce guide montre comment transformer efficacement des données XML en objets C# utilisables à l'aide de XmlSerializer
. Ceci est crucial pour le traitement des données XML au sein de vos applications. La clé est de créer des classes C# qui reflètent la structure XML.
Structurer vos classes C#
Considérons cet exemple de XML :
<code class="language-xml"><steplist><step><name>Name1</name><desc>Desc1</desc></step><step><name>Name2</name><desc>Desc2</desc></step></steplist></code>
Pour désérialiser ce XML, vous définirez deux classes C# correspondantes :
<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>
L'attribut XmlRoot
spécifie l'élément racine du XML, tandis que XmlElement
mappe les éléments XML aux propriétés de classe.
Le processus de désérialisation
Maintenant, utilisons XmlSerializer
pour effectuer la désérialisation :
<code class="language-csharp">string xmlData = @"<steplist><step><name>Name1</name><desc>Desc1</desc></step><step><name>Name2</name><desc>Desc2</desc></step></steplist>"; XmlSerializer serializer = new XmlSerializer(typeof(StepList)); using (TextReader reader = new StringReader(xmlData)) { StepList deserializedData = (StepList)serializer.Deserialize(reader); // Access and process deserializedData here }</code>
Ce code lit la chaîne XML, utilise le XmlSerializer
pour la convertir en un objet StepList
, puis vous permet d'accéder et d'utiliser les données contenues dans l'objet deserializedData
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!