当我尝试使用 JSON.Net 反序列化我的 JSON 时,它为我提供了 JSON 数组的无效值。
我有简单的 JSON:
[
{
"PhaseName": "Start",
"Advices": ["Lorem ipsum dolor",
"Lorem ipsum dolor",
"Lorem ipsum dolor"]
},
{
"PhaseName": "In Progress",
"Advices": ["Lorem ipsum dolor",
"Lorem ipsum dolor",
"Lorem ipsum dolor"]
},
{
"PhaseName": "Finish",
"Advices": ["Lorem ipsum dolor",
"Lorem ipsum dolor",
"Lorem ipsum dolor"]
}
]
我的代码中有一个对应的类:
public class Advices
{
public string PhaseName { get; set; }
public List<string> AdvicesList { get; set; }
}
还有一个表示 Advices 对象数组的 veriable:
public class MyAdvices
{
private Advices[] MyAdvicesArrays;
....
因此,当我尝试像这样反序列化我的 JSON 时:
MyAdvicesArrays= JsonConvert.DeserializeObject<Advices[]>(sMyJSON));
JSON.Net 用正确的值填充 MyAdvicesArrays 数组中每个对象的“阶段名称”属性,但每个对象的 Advices 数组无效:如果您在运行时检查它们,则“无法评估表达式”。我不明白。我做错了什么?