動的キー名を持つオブジェクトを含む JSON データを操作する場合、オブジェクトのプロパティに直接アクセスすることが困難になります。これは、一般的なオブジェクトのシリアル化には事前定義されたクラス プロパティが必要であるためです。
これを克服するには、Dictionary
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 サイトの他の関連記事を参照してください。