如果类名中有句点,如何查询JSON文档?

时间:2017-05-04 18:51:18

标签: c# json

我正在使用C#并接收一个存储在动态对象类型中的JSON文档。我试图将JSON中的数据提取到我的变量中:

myValue = data.resource.fields.System.ChangedDate.newValue

data是我的动态对象的名称。

问题是文档构造如下:

resource 
  fields
    System.ChangedDate
      newValue

所以“System.ChangedDate”在类名中有一个句点,这使得C#认为它们是两个独立的类。

1 个答案:

答案 0 :(得分:1)

如果你正在使用Newtonsoft.Json,这应该可行:

myValue = data.resource.fields["System.ChangedDate"].newValue;

fields将是JObject,其实现IDynamicMetaObjectProvider(继承自JToken),以及实施IDictionary<string, JToken>本身。 IDynamicMetaObjectProvider帮助处理.内容;在这样的情况下,我们可以使用IDictionary<string, JToken>来按字符串索引,其中名称与C#语法不兼容。