采取以下有效的JSON:Newtonsoft JSON.NET和json关键错误中的空格?
{
"universe": {
"solar system": "sun"
}
}
和这里的简单的C#代码:
using Newtonsoft.Json;
JToken x = JToken.Parse("{\"universe\": {\"solar system\": \"sun\"}}");
string s = x.First.First.First.Path;
此时s = "universe['solar system']"
但是我期待"universe.['solar system']"
(注意后 '' “宇宙”)。
如果json键没有空格(“solar_system”),我得到"universe.solar_system"
这是正确的。
问题是:这是json.net中的错误还是我需要做其他事情来支持json键中的空格?
感谢,
PT
不,键是对象,你不能用空格定义对象 –
AFAIK不是一个错误,只是在使用空格访问键时,括号表示法是强制性的。目前找不到任何支持文档,因此仅作评论。 – Equalsk
那么,任何json验证器都会高兴地验证jsons中的键,包括Newtonsoft的json.net,它们用方括号包装它们。我的问题是缺少点'。'在键之间。 – pts4