在Json.Net和JArrays中使用“root”无JSON对象需要帮助

时间:2011-05-23 15:44:29

标签: c# linq json json.net mailchimp

我正在使用MailChimp中的ExportAPI。它发送回“无根”的Json字符串,如下所示:

["Email Address", "First Name", "Last Name"]
["jeff@mydomain.com", "Jeff", "Johnson"]
["tubbs@mydomain.com", "Tubbs", "McGraw"]

没有括号,没有 - 只有几个数组。将其加载到JArray中只会获取第一个对象:

JArray jsonArray = new JArray.Parse(jsonResponse);
Console.WriteLine(jsonArray);

//Outputs:
//Email Address
//First Name
//Last Name

我希望将字符串的内容复制到数据库中,并且需要使用LINQ访问响应。有关使用Json对象的正确方法的建议,如上所示(使用Json.net或其他方式?)

2 个答案:

答案 0 :(得分:1)

用根元素填充字符串,只需添加'['和']'?

答案 1 :(得分:0)

这种行为实际上是the docs中提到的完全有目的的。原因是列表数据的完全转储很容易太大,无法始终将其放入内存并进行解析。因此,在给定返回格式的情况下,您应该使用换行符作为分隔符(或者通过该方式读取它),单独解析每个对象,然后随意执行任何操作。

我不熟悉在C#/ Linq中这样做,但文档页面上的PHP示例就是这样。