C# 使用JSON.NET将JSON数组反序列化为字符串数组

C# 使用JSON.NET将JSON数组反序列化为字符串数组,c#,.net,json,json.net,C#,.net,Json,Json.net,我正在尝试使用以下命令将JSON数组反序列化为字符串列表: Newtonsoft.Json.Linq.JArray jsonResponse = JsonConvert.DeserializeObject(result) as Newtonsoft.Json.Linq.JArray; List<string> response = jsonResponse.ToObject<List<string>>(); JSON具有以下结构: [[没有可能的进口货物和服

我正在尝试使用以下命令将JSON数组反序列化为字符串列表:

Newtonsoft.Json.Linq.JArray jsonResponse = JsonConvert.DeserializeObject(result) as Newtonsoft.Json.Linq.JArray;
List<string> response = jsonResponse.ToObject<List<string>>();
JSON具有以下结构:

[[没有可能的进口货物和服务编号,没有 可输入的代码]]

但这会引发以下错误:

读取字符串时出错。意外标记:星光。路径“[0]”

如何在没有错误的情况下反序列化对象?

这应该可以:-

var list=JArray.Parse@[[a,b,c]].Values.Selectx=>x.Value.ToList

希望有帮助

谢谢

我遵循了评论中的建议,一切正常

我只将代码更改为:

var jsonResponse = JsonConvert.DeserializeObject<List<List<string>>>(result);

获取列表列表。

我花了一些时间与C Fiddle一起工作,我喜欢在本地运行时进行协作,但我采用了您的解决方案并将其放入Fiddle中,以便其他一些人以后可能会有运行的完整代码,他们可以使用

此外,这突出了包含的需要,并且在页面上提供了所需的nuget包

using Newtonsoft.Json;
using System.Collections.Generic;
这还向用户展示了如何枚举新的嵌套列表,并按照JSON中的顺序显示所有值

谢谢!
-App Devon

为什么json以两个开头[[?是否打算在数组中包含一个数组?它是一个嵌套的锯齿状数组,var list=JsonConvert也是如此。DeserializeObject@Claies我现在不知道,我从web服务接收字符串,当我把它放在JSON查看器中时,它是一个字符串列表,因此您需要使用上面提到的@dbc选项,或者list response=jsonResponse.ToObject