gpt4 book ai didi

c# - JSON 反序列化 : How to get values out of a JSON array of objects

转载 作者:行者123 更新时间:2023-11-30 13:15:23 25 4
gpt4 key购买 nike

我已在 C# 中成功反序列化此 JSON 字符串,但无法从嵌套在数组中的对象中提取值:

JavaScriptSerializer js = new JavaScriptSerializer();

string json =
{"key":"1234","status":"ok","members":
[{"id":7,"name":"Joe"},
{"id":2,"name":"Robert"},
{"id":18,"name":"Tim"}
]
}

var d = js.Deserialize < dynamic > (json);

string _key = d["key"]; // this works

Array _members = d["members"]; // this works, length = 3

但我无法按名称从对象中提取值,例如,这是不对的,但本质上我想要

_members[0]["name"] 或 _members[0].name

我认为反序列化器使数组字典中的对象成为对象,但我想我正在清除遗漏的东西......

最佳答案

我推荐使用 Json.NET做你正在做的事。以下代码可以满足您的需求:

    JObject jObject = JObject.Parse(json);
JToken memberName = jObject["members"].First["name"];
Console.WriteLine(memberName); // Joe

通过LINQ to Json .

更新:

    var js = new JavaScriptSerializer();
var d = js.Deserialize<dynamic>(json);
Console.WriteLine(d["members"][0]["name"]); // Joe

也可以正常工作。

关于c# - JSON 反序列化 : How to get values out of a JSON array of objects,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9526159/

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