利用C# XmlSerializer將XML反序列化為物件
本文介紹如何使用C#的XmlSerializer
類別將XML資料反序列化為物件。 這需要您定義與XML結構相符的C#類別。 步驟如下:
首先,建立一個與XML根元素對應的類別。例如,如果XML的根元素是<StepList>
,則建立名為StepList
的類別:
<code class="language-csharp">[XmlRoot("StepList")] public class StepList { // ... }</code>
接下來,為XML中的每個子元素新增對應的屬性到類別中。使用XmlElement
特性來指定元素名稱。例如:
<code class="language-csharp">public class Step { [XmlElement("Name")] public string Name { get; set; } [XmlElement("Desc")] public string Desc { get; set; } }</code>
最後,使用XmlSerializer
將XML反序列化為物件:
<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>
根據提供的XML範例,適當的類別結構如下:
<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>
透過上述步驟,您可以輕鬆地將XML資料對應到C#物件中,方便後續處理和使用。
以上是如何在 C# 中使用 XmlSerializer 將 XML 反序列化為物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!