我有一个Json数据,看起来像:
{
"prop1": val1,
"prop2": val2,
"prop3": val3,
}
{
"prop1": val4,
"prop2": val5,
"prop3": val6,
}
我还有一门课:
public class RootObject
{
[JsonProperty("prop1")]
public string Prop1 { get; set; }
[JsonProperty("prop2")]
public string Prop2 { get; set; }
[JsonProperty("prop3")]
public string Prop3 { get; set; }
}
现在我正试图这样反序列化这些数据:
List<RootObject> lstObjs = JsonConvert.DeserializeObject<List<RootObject>>(jsonData);
但这给了我一个错误"无法将当前JSON对象(例如{"name":"value"})反序列化为类型"System.Collections.Generic.List",因为该类型需要JSON数组(例如[1,2,3])才能正确反序列化"。
如果我只反序列化一个像这样的对象
RootObject obj = JsonConvert.DeserializeObject<RootObject>(jsonData);
一切都很好。我搞不清出了什么问题。
您的JSON数据无效。它应该看起来像:
[
{
"prop1": "val1",
"prop2": "val2",
"prop3": "val3",
},
{
"prop1": "val4",
"prop2": "val5",
"prop3": "val6",
}
]
它是有效的。