ホームページ > バックエンド開発 > C++ > C# で辞書を使用して動的キーで JSON を逆シリアル化する方法

C# で辞書を使用して動的キーで JSON を逆シリアル化する方法

Patricia Arquette
リリース: 2025-01-07 12:47:41
オリジナル
1004 人が閲覧しました

How to Deserialize JSON with Dynamic Keys Using Dictionaries in C#?

辞書を使用した動的キーを使用した JSON の逆シリアル化

動的キー名を持つオブジェクトを含む JSON データを操作する場合、オブジェクトのプロパティに直接アクセスすることが困難になります。これは、一般的なオブジェクトのシリアル化には事前定義されたクラス プロパティが必要であるためです。

これを克服するには、Dictionary を利用できます。構造体。ここで、文字列は動的キー名を表し、T はオブジェクト データを保持するクラスです。このアプローチにより、さまざまなプロパティを持つオブジェクトの柔軟な逆シリアル化が可能になります。

class RootObject
{
    public Dictionary<string, User> users { get; set; }
}

class User
{
    public string name { get; set; }
    public string state { get; set; }
    public string id { get; set; }
}
ログイン後にコピー

上記のクラスと指定された JSON データを使用すると、

RootObject obj = JsonConvert.DeserializeObject<RootObject>(json);
ログイン後にコピー

逆シリアル化されたデータにアクセスして反復処理できるようになりました。オブジェクト:

foreach (string key in root.users.Keys)
{
    User user = root.users[key];
    // Access user properties here
}
ログイン後にコピー

出力:

key: 10045
name: steve
state: NY
id: ebb2-92bf-3062-7774

key: 12345
name: mike
state: MA
id: fb60-b34f-6dc8-aaf7

key: 100034
name: tom
state: WA
id: cedf-c56f-18a4-4b1
ログイン後にコピー

辞書を活用することで、動的なキー名を持つ JSON データを効果的に逆シリアル化し、オブジェクトのプロパティに簡単にアクセスできます。

以上がC# で辞書を使用して動的キーで JSON を逆シリアル化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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