我最近尝试使用带有动态数据类型的 JSON.Net API 反序列化 JSON 内容。
我真的很努力地搜索了论坛,发现在WinRT中确实可以这样做。
示例 JSON 可以是:
string json = "{\"message\":\"Sample Message\"}"
我使用了以下格式:
dynamic result = JsonConvert.DeserializeObject<dynamic>(json);
它成功地将内容反序列化为结果。但是当我尝试使用如下语法访问它时:
string message = result.message;
它会导致一个错误,即:
“object”不包含“message”的定义,并且找不到接受“object”类型的第一个参数的扩展方法“message”(您是否缺少 using 指令或程序集引用?)
我在互联网上尝试了许多 json 样本,但错误仍然相同。说真的,几个小时前我试过了,它确实有效!但是这次我找不到我缺少的东西。
PS:我只需要使用动态,因为我的实际 Json 包含动态字段名称。一旦它就像:
{"New York" : "Its in United States"}
有时就像:
{"London" : "Its in United Kingdom"}
(虽然是废话!:P)我猜json2csharp类方法在这里不起作用,如果有一些次要和更有效的方法。请指导我。我要解析的真实 Json 非常复杂。如果需要发布,我会发布它。