1

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

[
    {
    "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可以举个例子吗?

到目前为止,谢谢,

多米尼克

4

1 回答 1

3

您可以将 JSON 解析为dynamic使用JavaScriptSerializer对象,例如

var serializer = new JavaScriptSerializer();   
var result = serializer.Deserialize<dynamic>(json);
foreach (var item in result)
{
    Console.WriteLine(item["body"]["message"]);
}
于 2012-09-06T14:33:27.673 回答