使用 XmlSerializer 將 XML 資料轉換為 C# 物件
本指南示範如何使用 XmlSerializer
將 XML 資料有效轉換為可用的 C# 物件。 這對於在應用程式中處理 XML 資料至關重要。 關鍵是建立鏡像 XML 結構的 C# 類別。
建立您的 C# 類別
讓我們考慮這個範例 XML:
<code class="language-xml"><steplist><step><name>Name1</name><desc>Desc1</desc></step><step><name>Name2</name><desc>Desc2</desc></step></steplist></code>
要反序列化此 XML,您將定義兩個對應的 C# 類別:
<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>
XmlRoot
屬性指定 XML 的根元素,而 XmlElement
將 XML 元素對應到類別屬性。
反序列化過程
現在,讓我們使用 XmlSerializer
來執行反序列化:
<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>
此程式碼讀取 XML 字串,使用 XmlSerializer
將其轉換為 StepList
對象,然後允許您存取和使用 deserializedData
對像中的資料。
以上是如何使用 XmlSerializer 將 XML 資料反序列化為 C# 物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!