我正在使用 JSON razor Web 帮助程序 ( http://msdn.microsoft.com/en-us/library/gg538324%28v=vs.111%29.aspx ) 来解码具有多个嵌套节点的 JSON 字符串。
我在另一个项目上很好地使用了 JSON.Decode 方法,但是在这个项目上,我的 JSON 源字符串具有以数字开头的嵌套节点,我遇到了问题。
我的 JSON 字符串看起来像
myJSONString="
{
Foo1: ‘data’,
‘Foo2:’ {
‘123':{
‘goodStuff’:{ [
{
boo1: ‘Data1’,
boo2: ‘Data2’
}
] }
}
}
} "
通常我会这样做:
var decodedJsonString = Json.Decode(myJSONString) <br>
并访问以下数据:
foreach(var p in decodedJsonString.Foo2.123.goodStuff)
{
p.boo1; <br>
p.boo2; <br>
}
通常这对我来说很好,但我收到一个错误,它不喜欢.123。部分,因为节点以数字而不是字母开头。内联错误是“预期标识符”。如果我运行网页,服务器错误是它:“)预期”。
有什么建议么?谢谢!
我可以通过使用很多 foreach 循环来解决这个问题,例如:
foreach( var p in decodedJsonString.Foo2)
{
var k = p.Value;
if(p.Key.Equals("123"))
{
foreach(var j in k)
{
//etc
}
}
}
只是不知道如何使它成为一个解码的 JSON 对象,我可以像 decodedJsonString.Foo2.123.goodStuff 一样再次引用它
感谢任何帮助。对不起,如果我遗漏了一些明显的东西!再次感谢你。