我有以下代码:
var user = (Dictionary<string, object>)serializer.DeserializeObject(responsecontent);
responsecontent
中的输入是JSON,但是它没有正确地解析为对象。我应该如何正确地反序列化它?
发布于 2013-07-25 02:58:19
正如这里所回答的- Deserialize JSON into C# dynamic object?
使用Json.NET非常简单:
dynamic stuff = JsonConvert.DeserializeObject("{ 'Name': 'Jon Smith', 'Address': { 'City': 'New York', 'State': 'NY' }, 'Age': 42 }");
string name = stuff.Name;
string address = stuff.Address.City;
或者使用Newtonsoft.Json.Linq:
dynamic stuff = JObject.Parse("{ 'Name': 'Jon Smith', 'Address': { 'City': 'New York', 'State': 'NY' }, 'Age': 42 }");
string name = stuff.Name;
string address = stuff.Address.City;
发布于 2011-07-08 13:11:47
如果您可以使用.NET 4,请查看:http://visitmix.com/writings/the-rise-of-json (archive.org)
下面是该站点的一个片段:
WebClient webClient = new WebClient();
dynamic result = JsonValue.Parse(webClient.DownloadString("https://api.foursquare.com/v2/users/self?oauth_token=XXXXXXX"));
Console.WriteLine(result.response.user.firstName);
最后的Console.WriteLine很甜蜜..。
发布于 2011-07-08 13:12:38
https://stackoverflow.com/questions/6620165
复制相似问题