JObject.Parse(jsonString) 导致布尔数据出现问题。例如 json 是:
{
"BoolParam": true
}
我使用以下代码进行解析:
JObject data = JObject.Parse(str1);
foreach (var x in data)
{
string name = x.Key;
Console.Write(name + " (");
JToken value = x.Value;
Console.Write(value.Type + ")\n");
Console.WriteLine(value);
}
这将值打印为: BoolParam (Boolean) : True
当我保存此 json 供以后使用时,区分大小写会导致问题。保存的 json 看起来像
{
"BoolParam": True
}
但是,当我稍后使用它时,JObject.Parse(str) 将错误抛出为无效的 Json:解析值时遇到的意外字符:T. Path 'BoolParam',第 2 行,第 15 位。
如果我将大小写从“True”更改为“true”,它会起作用。我不想在保存时添加这个技巧来改变大小写,但是有没有更好的方法来处理这种情况。