0

我从 Twitter API SEARCH 获得了 JSON 数据。我正在尝试将这些数据反序列化为对象。

JSON 方案如下所示:

    {
      "element": INT,
      "element2": STRING,
       ..
       ..
      "Results":[
                   {
                      "user":STRING, 
                      "image":STRING,
                      ..
                      ..
                   }
                ]
   }

如何使用 JSON Toolkit 或其他东西将这些 JSON 元素反序列化为对象?

4

2 回答 2

1

创建一个匹配 JSON 模式的类

public class Data
{
   public string Element{get;set;}
   public string Element2{get;set;}
   public List<Result> Results{get;set;}
}
public class Result
{
  public string User{get;set;}
  public string Image{get;set;}
}

并使用JSON.NET 反序列化

var result = JsonConvert.DeserializeObject<Result>(json);
于 2013-04-20T12:22:33.570 回答
1

如果您对正确的类型定义有疑问,您始终可以使用 Json.Net 使用动态反序列化:

var original = JsonConvert.DeserializeObject<dynamic>(jsonstring);

然后基于它构建您想要的对象(例如,如果原始对象包含开销信息集,并且您不需要所有这些对象):

var somepart = new {
                       E1 = original.element1,
                       E2 = original.element2
                   };
于 2013-04-20T13:49:54.263 回答