JSON.NET JObject键比较不区分大小写

我正在使用Newtonsoft Json.net来解析JSON字符串。 我将字符串转换为JObject。 当通过键访问元素的值时,我希望比较不区分大小写。 在下面的代码中,我使用“FROM”作为键。 我希望它在行json [“FROM”]返回字符串“1”.ToString()。 但它失败了。 是否可以使下面的代码工作?

String ptString = "{from: 1, to: 3}"; var json = (JObject)JsonConvert.DeserializeObject(ptString); String f = json["FROM"].ToString(); 

c#允许您使用不区分大小写的键的字典,因此我使用的解决方法是将JObject转换为StringComparer.CurrentCultureIgnoreCase集的字典,如下所示:

 JObject json = (JObject)JsonConvert.DeserializeObject(ptString); Dictionary d = new Dictionary(json.ToObject>(), StringComparer.CurrentCultureIgnoreCase); String f = d["FROM"].ToString(); 

这应该工作:

 string json = @"{UPPER: 'value'}"; JObject o = JObject.Parse(json); var value = o.GetValue("upper", StringComparison.OrdinalIgnoreCase)?.Value();