C# 如何解析不在";中的JSON数据;名称:value";格式?

C# 如何解析不在";中的JSON数据;名称:value";格式?,c#,json,winforms,json.net,C#,Json,Winforms,Json.net,我收到了一些JSON数据,这些数据不是“name:value”对中的数据,而是类似以下内容: [[\"ManagerID\",\"EmployeeID\",\"Domain\"],[\"2\",\"110\",\"BBU\"]] 由于出现错误,我无法使用JsonConvert.DeserializeObject解析此数据 “要修复此错误,请将JSON更改为JSON对象(例如。 {“name”:“value”})或将反序列化类型更改为数组或 实现集合接口的类型(例如ICollection、ILi

我收到了一些JSON数据,这些数据不是“name:value”对中的数据,而是类似以下内容:

[[\"ManagerID\",\"EmployeeID\",\"Domain\"],[\"2\",\"110\",\"BBU\"]]
由于出现错误,我无法使用
JsonConvert.DeserializeObject
解析此数据

“要修复此错误,请将JSON更改为JSON对象(例如。 {“name”:“value”})或将反序列化类型更改为数组或 实现集合接口的类型(例如ICollection、IList) 类似于可以从JSON数组反序列化的列表。 还可以将JsonArrayAttribute添加到类型中,以强制它 从JSON数组反序列化。路径“”,第1行,位置1。“


我正在使用Visual Studio 2008和.net framework 3.5。如果您需要更多说明,请告诉我。

假设您的对象属于此类:

class MyObject
{
    public int ManagerID { get; set; }
    public int EmployeeID { get; set; }
    public string Domain { get; set, }
}
那么您的JSON与之不匹配,您的JSON应该如下所示:

{"ManagerID": 2, "EmployeeID": 110, "Domain": "BBS"}
如果您真的想阅读上述JSON,您需要:

JsonConvert.DeserializeObject<string[][]>(yourString);
JsonConvert.DeserializeObject(您的字符串);
尝试

Newtonsoft.Json.JsonConvert.DeserializeObject(“[\'ManagerID\',\'EmployeeID\',\'Domain\',[\'2\',\'110\',\'BBU\']”)

但这不是一个方便的结构…

错误消息说明了一切。您的对象是什么样子的?我以字符串形式接收上述数据,因为这是web服务返回的方式。所以我想做的是解析上面提到的字符串并将其存储在列表中。嘿,非常感谢!非常感谢您的快速回复。我和这件事纠缠了好几个小时。是的,JSON的格式不正确,但这是WebService返回的,它不在我的控制之下。只是一个简单的问题。我如何填充数据以直接列出?当Web服务有多个记录/条目时,它所提供的数据是什么样子的?类似这样:
[[\'ManagerID\'、\'EmployeeID\'、\'Domain\']、[\'2\'、\'110\'、\'BBU\']、[\'5\'、'150\'、'SBU\']]
其中第一行定义了列名,其余的行是实际数据。我明白了。不幸的是,您将不得不自己用一个小循环来完成这项工作。像(
for(inti=1;i
如果使用固定索引,可能需要解析列名,可能需要预期转换错误并进行处理。您必须知道;)
Newtonsoft.Json.JsonConvert.DeserializeObject<string[][]>("[[\"ManagerID\",\"EmployeeID\",\"Domain\"],[\"2\",\"110\",\"BBU\"]]")