2013-05-13 63 views
1

反序列化JSON我有JSON,看起來像這樣(由飛利浦HUE API):與Json.NET

{ 
    "1": {"name": "Bedroom"}, 
    "2": {"name": "Kitchen"} 
} 

當我嘗試反序列化這個文件我碰到問題,因爲文件的結構的方式,是。

如果它已被格式化這樣的:

[ 
    {"nr": "1", "name": "Bedroom"}, 
    {"nr": "2", "name": "Kitchen"} 
] 

一切都將是罰款。現在,我不得不做字符串解析,以提取數據... :-(

任何意見或建議?

回答

2

我會反序列化JObject並把它作爲Dictionary

var jObj = (JObject)JsonConvert.DeserializeObject(json); 
Console.WriteLine(jObj["1"]["name"]); 

dynamic jObj = JsonConvert.DeserializeObject(json); 
Console.WriteLine(jObj["1"].name); 
+0

謝謝!我將與動態方法一起工作,看看我能用它做些什麼。 – MrThornell 2013-05-13 11:58:06