JSON反序列化

JSON反序列化

问题描述:

这是我的JSONJSON反序列化

[{"id":23,"name":"Video Clips"},{"id":15,"name":"Deleted Scenes"},{"id":9,"name":"Music Albums"},{"id":7,"name":"Trailers"},{"id":18,"name":"Short Films"},{"id":21,"name":"Movie Clips"},{"id":1,"name":"Movies "},{"id":4,"name":"Plays"},{"id":22,"name":"Scenes"},{"id":2,"name":"TV Show"},{"id":5,"name":"Kids"},{"id":16,"name":"Interviews"},{"id":11,"name":"Film Songs"},{"id":14,"name":"Making of Movie"}] 

我要反序列化,我应该怎么做呢?请帮助

+5

看看[JSON.NET](http://json.codeplex.com/) –

+0

看看这个链接http://*.com/questions/7203770/how-to-deserialize-json-in-asp -net – Bobby

+0

如何反序列化JSON这个升C – Mahendra

你在那里的JSON表示一个看起来像视频的对象数组,因此首先你需要def INE一类以每个视频存储,像这样:

public class Video 
{ 
    public int ID { get; set; } 
    public string Name { get; set; } 
} 

完成这一操作,您可以利用任何众多JSON库的一个内置或第三方。在这个例子中,我使用了JSON.NET。这是一个链接到documentation

接下来,您将需要使用像这样的JsonConvert类的DeserializeObject静态泛型方法,指定List<Video>类型,以便它知道JSON被反序列化是视频对象的集合:

using Newtonsoft.Json; 

... 

string json = "[{\"id\":23,\"name\":\"Video Clips\"},{\"id\":15,\"name\":\"Deleted Scenes\"},{\"id\":9,\"name\":\"Music Albums\"},{\"id\":7,\"name\":\"Trailers\"},{\"id\":18,\"name\":\"Short Films\"},{\"id\":21,\"name\":\"Movie Clips\"},{\"id\":1,\"name\":\"Movies \"},{\"id\":4,\"name\":\"Plays\"},{\"id\":22,\"name\":\"Scenes\"},{\"id\":2,\"name\":\"TV Show\"},{\"id\":5,\"name\":\"Kids\"},{\"id\":16,\"name\":\"Interviews\"},{\"id\":11,\"name\":\"Film Songs\"},{\"id\":14,\"name\":\"Making of Movie\"}]"; 

List<Video> videos = JsonConvert.DeserializeObject<List<Video>>(json); 

完成此操作后,您就可以使用视频对象的集合。

希望这可以帮助你。

您可以使用反序列化从JavaScriptSerializer的System.Web.Extensions程序的DLL可以在被发现的JSON:

C:\ Program Files文件\参考 大会\微软\ Framework.NETFramework \ V4 .0 \ System.Web.Extensions.dll

在项目中添加增加一个参考DLL后:

using System.Web.Script.Serialization; 

而且你还需要将目标框架设置为一个非客户端配置文件,例如:

的.NET Framework 4

然后使用代码像这样的反序列化json:

var json = @"[{""id"":23,""name"":""Video Clips""},{""id"":15,""name"":""Deleted Scenes""},{""id"":9,""name"":""Music Albums""},{""id"":7,""name"":""Trailers""},{""id"":18,""name"":""Short Films""},{""id"":21,""name"":""Movie Clips""},{""id"":1,""name"":""Movies ""},{""id"":4,""name"":""Plays""},{""id"":22,""name"":""Scenes""},{""id"":2,""name"":""TV Show""},{""id"":5,""name"":""Kids""},{""id"":16,""name"":""Interviews""},{""id"":11,""name"":""Film Songs""},{""id"":14,""name"":""Making of Movie""}]"; 
var jsonSerializer = new JavaScriptSerializer(); 
var deserializedList = jsonSerializer.Deserialize<List<JsonType>>(json); 
+0

谢谢主席先生的宝贵合作mment – Mahendra

+0

@ user913947:您的欢迎:) –