ホームページ > バックエンド開発 > C++ > C# で XmlSerializer を使用して XML をオブジェクトに逆シリアル化する方法

C# で XmlSerializer を使用して XML をオブジェクトに逆シリアル化する方法

Linda Hamilton
リリース: 2025-01-15 16:06:44
オリジナル
489 人が閲覧しました

How to Deserialize XML into Objects using XmlSerializer in C#?

C# XmlSerializer を使用して XML をオブジェクトに逆シリアル化します

この記事では、C# の XmlSerializer クラスを使用して XML データをオブジェクトに逆シリアル化する方法を紹介します。 これには、XML 構造と一致する C# クラスを定義する必要があります。 手順は次のとおりです。

  1. 一致するクラス構造を作成します:

まず、XML ルート要素に対応するクラスを作成します。たとえば、XML のルート要素が <StepList> の場合、StepList という名前のクラスを作成します。

<code class="language-csharp">[XmlRoot("StepList")]
public class StepList
{
    // ...
}</code>
ログイン後にコピー
  1. 属性の追加:
次に、XML 内の各子要素のクラスに、対応する属性を追加します。

属性を使用して要素名を指定します。例: XmlElement

<code class="language-csharp">public class Step
{
    [XmlElement("Name")]
    public string Name { get; set; }

    [XmlElement("Desc")]
    public string Desc { get; set; }
}</code>
ログイン後にコピー
  1. XmlSerializer を使用した逆シリアル化:
最後に、

を使用して XML をオブジェクトに逆シリアル化します。 XmlSerializer

<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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート