gpt4 book ai didi

c# - 使用 JSON.NET 读取动态属性名称

转载 作者:太空狗 更新时间:2023-10-30 00:04:33 25 4
gpt4 key购买 nike

我正在使用来自返回 JSON 的外部 API 的数据,如下所示。

{
"data": {
"4": {
"id": "12",
"email": "q23rfedsafsadf",
"first_name": "lachlan",

如何使用 JSON.NET 获取 4 值?这是动态的,因为它会随着每条记录而变化(这不是我用过的最理想的 API)。

最佳答案

这是一个有效的 dotNetFiddle:https://dotnetfiddle.net/6Zq5Ry

代码如下:

using System;
using Newtonsoft.Json;
using System.Collections.Generic;

public class Program
{
public static void Main()
{
string json = @"{
'data': {
'4': {
'id': '12',
'email': 'lachlan12@somedomain.com',
'first_name': 'lachlan'
},
'5': {
'id': '15',
'email': 'appuswamy15email@somedomain.com',
'first_name': 'appuswamy'
}
}
}";

var data = JsonConvert.DeserializeObject<RootObject>(json);
Console.WriteLine("# of items deserialized : {0}", data.DataItems.Count);
foreach ( var item in data.DataItems)
{
Console.WriteLine(" Item Key {0}: ", item.Key);
Console.WriteLine(" id: {0}", item.Value.id);
Console.WriteLine(" email: {0}", item.Value.email);
Console.WriteLine(" first_name: {0}", item.Value.first_name);
}
}
}

public class RootObject
{
[JsonProperty(PropertyName = "data")]
public Dictionary<string,DataItem> DataItems { get; set; }
}

public class DataItem
{
public string id { get; set; }
public string email { get; set; }
public string first_name { get; set; }
}

这是输出:

enter image description here

关于c# - 使用 JSON.NET 读取动态属性名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41387782/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com