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 を逆シリアル化するには、対応する 2 つの 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 中国語 Web サイトの他の関連記事を参照してください。