自从升级到 Json.net 6.0.1 后,我不再能够提出.SelectToken("$type")
请求。 有谁知道这是否是重大更改?
以下代码适用于旧版本:
var json = {"$type" : "test", "property1" : "value1"}
var obj = JsonConvert.DeserializeObject<JObject>(json);
// this line works
var property1 = obj.SelectToken("property1");
// this line throws in 6.0.1 - "Unexpected character while parsing path: t"
var docType = obj.SelectToken("$type");
此错误
已在 Json.Net 6.0 版本 3 中修复。 我能够通过 NuGet 下载 6.0.2 和 6.0.3 版本并使用问题中发布的代码在本地测试每个版本来确认这一点。 6.0.2 引发异常,而 6.0.3(及更高版本)不会。