如何反序列化json数据数组

时间:2019-05-08 13:59:50

标签: c# json.net deserialization

我有这个json文件:

{
  "timestamp": 1557323147422,
  "change_id": 11687520784,
  "data": [
      [ "new", 5775.0, 16530.0 ],
      [ "new", 5774.5, 360.0 ]
  ]
}

我需要设置一个类来反序列化它,但是数据数组给我带来了问题。

我试图将数据映射到:

List<(string, double, double)>

但这不起作用。 列表起作用了,但是只是将问题推了一步。

我可以将其映射到

List<dynamic>

然后获得需要单独解析的JArray列表。

我需要的是能够将其映射到具有字符串和2个双打的类。

2 个答案:

答案 0 :(得分:0)

您可以使用http://json2csharp.com/

我生成了以下代码:

public class RootObject
{
    public long timestamp { get; set; }
    public long change_id { get; set; }
    public List<List<object>> data { get; set; }
}

答案 1 :(得分:0)

您的数组在JSON中仍然是object的数组,它既不是元组也不是类型。

所以List<List<object>>(或IEnumerable<IEnumerable<object>>)似乎是唯一的选择。