C# 如何反序列化只包含值的JSON数组?

C# 如何反序列化只包含值的JSON数组?,c#,json,json.net,C#,Json,Json.net,我从一个web函数得到这个结果 ["767,20150221122715,121053103,14573465,1,7,302", "767,20150221122756,121053165,14573375,1,0,302", "767,20150221122840,121053498,14572841,1,12,124"] 通常Json具有PropertyName:Value 但是它有一个字符串数组,每个字符串都有用逗号分隔的值。我知道每一个价值立场的含义 我尝试使用JsonConvert

我从一个web函数得到这个结果

["767,20150221122715,121053103,14573465,1,7,302",
"767,20150221122756,121053165,14573375,1,0,302",
"767,20150221122840,121053498,14572841,1,12,124"]
通常Json具有PropertyName:Value 但是它有一个字符串数组,每个字符串都有用逗号分隔的值。我知道每一个价值立场的含义

我尝试使用
JsonConvert.DeserializeObject
,但无法使其工作

string deserializedProduct = JsonConvert.DeserializeObject<string>(json);
//and
List<string> deserializedProduct = JsonConvert.DeserializeObject<string>(json);
string deserializedProduct=JsonConvert.DeserializeObject(json);
//及
List deserializedProduct=JsonConvert.DeserializeObject(json);

我可以通过拆分来解析字符串,但我想知道是否有一种简单的方法。

要回答您的问题,根据,它是一个有效的JSON值(字符串数组)

要根据您应该使用的
JsonConvert.DeserializeObject(json)

要将其转换为
反序列化对象()
方法的泛型参数是您希望反序列化程序反序列化的类型。json字符串表示字符串数组,因此应该反序列化为字符串集合(通常为
List

不过,如果可能的话,最好返回更具体的类型。为了使它更通用,您可以对泛型类型使用
JToken
,或者更具体地说,
JArray

var values = JsonConvert.Deserialize<JToken>(json); // good
var values = JsonConvert.Deserialize<JArray>(json); // better in this case
var values=JsonConvert.Deserialize(json);//好的
var values=JsonConvert.Deserialize(json);//这样比较好

您能否将问题的标题改为真正有意义的内容?这是一个JSON字符串,没有任何意义,将来在搜索结果中找到它的任何人都将完全不关心它。标题应该解释你遇到的问题或你提出的问题。谢谢。@KenWhite:这是一个评论:)@leppie:我的观点完全正确。这当然不是问题。您得到的JSON结果是一个完全合法的JSON数组,我建议您阅读此内容,我将其更改为“这是一个正确的JSON字符串吗?”您的第一个假设是JSON结果无效,这无助于您搜索答案,我建议你去投票给相关SO问题中的人,这将有助于future@Thomas如果您使用的是
jsonvert
这应该是您搜索的内容,请创建与此相关的问题,或者最好搜索谷歌。
object values = JsonConvert.Deserialize(json);
var values = JsonConvert.Deserialize<JToken>(json); // good
var values = JsonConvert.Deserialize<JArray>(json); // better in this case