JavaScriptSerializer与JsonConvert.SerializeObject(序列化)

JavaScriptSerializer:

应对 Json.NET 使用序列化和反序列化。 为启用 AJAX 的应用程序提供序列化和反序列化功能。

命名空间: System.Web.Script.Serialization

程序集: System.Web.Extensions.dll

 JavaScriptSerializer 类由异步通信层内部使用,用于序列化和反序列化在浏览器和 Web 服务器之间传递的数据。 您无法访问序列化程序的此实例。 但是,此类公开了公共 API。 因此,当您希望在托管代码中使用 JavaScript 对象符号 (JSON) 时可以使用此类。

若要序列化对象,请使用 Serialize 方法。 若要反序列化 JSON 字符串,请使用 Deserialize 或 DeserializeObject 方法。 若要序列化和反序列化 JavaScriptSerializer 本身不支持的类型,请使用 JavaScriptConverter 类来实现自定义转换器。 然后,使用 RegisterConverters 方法注册转换器。

13             List<Person> persons = new List<Person>{
14                                    new Person("wolfy",24,Convert.ToDateTime("1989-04-11")),
15                                    new Person("张三",23,Convert.ToDateTime("1990-04-11")),
16                                    new Person("李四",22,Convert.ToDateTime("1991-04-11")),
17                                    new Person("王五",21,Convert.ToDateTime("1992-04-11"))
18                                };
19             //创建JavaScriptSerializer对象
20             JavaScriptSerializer jss = new JavaScriptSerializer();
21             //调用序列化方法Serialize
22             string json = jss.Serialize(persons);
23             Console.WriteLine("上面是序列化.....");
24             Console.WriteLine(json);
25             Console.WriteLine("以下是反序列化.....");
26             JavaScriptSerializer jss2 = new JavaScriptSerializer();
27             List<Person> list = jss2.Deserialize<List<Person>>(json);
28             foreach (Person item in list)
29             {
30                 Console.WriteLine(item.Name + "\t" + item.Age.ToString() + "\t" + item.Birthday);
31             }
32        
33             Console.Read();

JsonConvert.SerializeObject:

JsonConvert.SerializeObject() 输出josn格式  也就是序列化。

 List<T> list = m.FillModel(dt);
 string json = JsonConvert.SerializeObject(new { data =list });
 context.Response.Write(json);  
       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值