使用DataContract访问VB.Net中JSON中的无名称属性



我正试图在VB.Net中序列化一个包含以下内容的JSON文件:"scripts": [[123, 80, [["whenKeyPressed", "space"], ["nextCostume"]]], [55, 32, [["whenKeyPressed", "space"], ["doPlaySoundAndWait", "Hello"]]]]

我使用的是DataContract<DataMember(Name:="scripts")>,它对文件的其余部分很好,但在这种情况下,属性没有名称。JSON验证器JSONlint.com表示这是有效的JSON。

我认为如何对DataMembers进行资格鉴定?此外,它有一个无名数组,我如何访问它?

如有任何帮助,我们将不胜感激。

我终于找到了一个解决方法,将scripts分配给DataContract中的List(Of Object),然后在运行时将scripts强制转换为所需类型。对于列表,我将其投射为IList(Of Object),然后在其中迭代For循环。

它不像其他字段那样"感觉"为"面向对象",而且我不能按名称引用字段(因为它们没有),但它可以工作(需要大量转换,尤其是因为我使用Option Strict On)。

如果有更好的方法,我愿意接受建议。

最新更新