使用 Json.net 将 JSON 对象反序列化为动态对象

问题描述

Json.NET 允许我们这样做:

dynamic d = JObject.Parse("{number:1000, str:'string', array: [1,2,3,4,5,6]}");

Console.WriteLine(d.number);
Console.WriteLine(d.str);
Console.WriteLine(d.array.Count);

输出

 1000
 string
 6

此处的文档:

另请参阅JObject.ParseJArray.Parse

解决方法

是否可以使用 json.net 从 json 反序列化返回动态对象?我想做这样的事情:

dynamic jsonResponse = JsonConvert.Deserialize(json);
Console.WriteLine(jsonResponse.message);