{
        "name": "甄嬛体",   
        "2012-05-04 14:59": "5724"
      } 
以上是新浪微博API获取到的数据https://api.weibo.com/2/trends/weekly.json当创建c#中对应的类时,字段name可以写成public string name{get;set;]但是时间那个key应该怎么写才能在C#类中取到对应的value值,时间那个key("2012-05-04 14:59")获取到的是不断变化的。这次是"2012-05-04 14:59" ,下次可能是别的。

解决方案 »

  1.   

    由于是不标准的序列化对象类型,因此你无法通过标准的反序列化类来实现,需要自定义一个序列化类或者简单点,直接自定义一个方法解析Json数据。解析后的数据用Dictionary来存放。
      

  2.   

                string str = "{\"name\": \"甄嬛体\",\"2012-05-04 14:59\": \"5724\"}";
                JavaScriptObject obj = JavaScriptConvert.DeserializeObject(str) as JavaScriptObject;
                foreach (KeyValuePair<string, object> k in obj)
                {
                    Console.WriteLine("Key:{0} Value:{1}", k.Key, k.Value);
                }
    /*
    Key:name Value:甄嬛体
    Key:2012-05-04 14:59 Value:5724*/