![](/img/trans.png)
[英]C# Json.Net - How to deserialize an array of objects containing an array of other objects
[英]How to deserialize a JSON array containing an object that contains an array of arrays with Json.NET and C#?
如何使用C#和Json.NET将以下JSON反序列化为自定义对象:
[ {
'data': [
[ '100473','3481282801.0' ],
[ '100472','3481275600.0' ],
[ '100471','3481273800.0' ],
[ '100470','3481263900.0' ],
[ '100469','3481263000.0' ]
],
'error': '',
'statement_time': 0.00440700000000000030,
'total_time': 0.00475200000000000010
} ]
它是一个包含单个对象的数组。 为了使事情更有趣,该对象包含一个数组数组。 (不幸的是,我无法控制格式。)我对JSON相对较新,因此我想尝试Json.NET。 我对其他JSON框架持开放态度,如果这样会使事情变得更容易。
使用Json.Net
var result = JsonConvert.DeserializeObject<List<MyObject>>(str);
public class MyObject
{
public List<List<string>> data { get; set; }
public string error { get; set; }
public double statement_time { get; set; }
public double total_time { get; set; }
}
如果您使用的是C#4.0或更高版本,请使用动态对象:
dynamic json = Newtonsoft.Json.JsonConvert.DeserializeObject(jsonstring);
然后,您可以使用点符号访问JSON的成员,如下所示:
string s = json[0].data[0][0][1];
例如,这将为您返回100473。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.