我正在使用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或其他方式?)
用根元素填充字符串,只需添加"["one_answers"]]?
正如文档中提到的,这种行为实际上完全是故意的。原因是,列表数据的完整转储很容易太大,无法将其一致地放入内存并进行解析。因此,在给定返回格式的情况下,您应该使用换行符作为分隔符(或通过这种方式读取),单独解析每个对象,然后对它们执行所需的任何操作。
我不熟悉在C#/Linq中这样做,但docs页面上的PHP示例正是这样做的。