使用JSON.NET反序列化JSon字符串

6
我正在尝试反序列化以下Json字符串,以便我可以捕获a、b、c、d等值...
{
   "2012-11-26 20:34:12": {
    "a": 65,
    "b": -1,
    "c": "2012-11-26 20:34:12",
    "d": -1,
    "e": 0,
    "f": -112.3211156215747,
    "g": 33.57955864376957
  }
}

JSonlint认为这是有效的JSon数据,但我要在C#中创建什么样的类来使用JSON.NET JsonConverter进行反序列化呢?
我将获取更多类似的数据,并且键将会变化(当前显示为“2012-11-26 20:34:12”),这是让我感到困惑的部分。
非常感谢任何能帮助我入门的示例代码。
1个回答

4
您不需要任何类。
var obj = (JObject)JsonConvert.DeserializeObject(json);

var dict = obj.First.First.Children().Cast<JProperty>()
            .ToDictionary(p => p.Name, p =>p.Value);

var dt =  (string)dict["c"];
var d = (double)dict["g"];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接