关于c#:从JsonArray中提取JsonObject

Extracting JsonObject from JsonArray

我在从 Arry 中提取 JasonObject 时遇到问题,其中包含一些没有名称的对象。我已经通过批量请求表单 graph.facebook.

获得了数组

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[
    {
   "code":200,
   "headers":[{...}],
   "body":"{
        "
id":"255572697884115_1",
        "
from":{
            "
name":"xyzk",
            "
id":"59788447049"},
        "
message":"Hey",
        "
created_time":"2011-11-04T21:32:50+0000"}"},
    {
   "code":200,
   "headers":[{...}],
   "body":"{
        "
id":"255572697884115_2",
        "
from":{
             "
name":"xyzk",
             "
id":"59788447049"},
        "
message":":P",
        "
created_time":"2012-01-03T21:05:59+0000"}"}
]

现在我必须阅读包含对象的值"消息",但我不知道如何访问数组中的对象。谁能帮帮我?

我想使用 System.Json,另外还有 Newtonsoft.Json.

在 Java 中,GetJsonObject() 很容易使用,但我怎样才能成功使用 VSC#?有一个方法 JsonValueLinqExtensions.ToJsonObject 但我不知道如何使用。 sb可以举个例子吗?

到目前为止,谢谢你,

多米尼克


您可以使用 JavaScriptSerializer 对象例如

将 JSON 解析为 dynamic

1
2
3
4
5
6
var serializer = new JavaScriptSerializer();  
var result = serializer.Deserialize<dynamic>(json);
foreach (var item in result)
{
    Console.WriteLine(item["body"]["message"]);
}