使用DataContractJsonSerializer反序列化变量Type JSON数组

我有一个这种forms的JSON字符串:

string jsonStr = "[\"A\", [\"Martini\", \"alovell\"],[\"Martin\", \"lovell\"]]" 

我试图使用C#.NET反序列化器DataContractJsonSerializer使用以下代码片段反序列化JSON

 MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonStr)); DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof); X data = (X)serializer.ReadObject(ms); 

既然JSON数组是一个变量类型的数组,我不知道X应该是什么类型的对象

如果我的字符串是

 jsonStr = "[[\"Martini\", \"alovell\"],[\"Martin\", \"lovell\"]]" 

我可以用这个:

 X = List<List> 

这对我有用。 我想知道是否有任何方法可以反序列化变量类型的JSON数组?

您可以使用Json.NET来执行此操作。

 JArray a = JArray.Parse(jsonStr); 

JArray将包含字符串或嵌套的JArray,具体取决于JSON。