用于将普通旧CLR对象序列化为JSON的C#代码

时间:2009-09-29 03:40:16

标签: c# json .net-3.5 serialization poco

在ASP.NET应用程序中,我想将一个普通旧CLR对象(PO​​CO)的集合序列化为JSON字符串,然后将其作为Web响应的一部分发送到客户端。

是否有一个轻量级的C#库可以做到这一点?

2 个答案:

答案 0 :(得分:23)

是的,JSON.NET我取得了很多成功。

作为网页上的一个例子:

Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Price = 3.99M;
product.Sizes = new string[] { "Small", "Medium", "Large" };

string json = JsonConvert.SerializeObject(product);

答案 1 :(得分:9)

尝试DataContractJsonSerializer

  

将对象序列化为JavaScript   对象表示法(JSON)和   将JSON数据反序列化为对象。

     

使用DataContractJsonSerializer   用于序列化类型实例的类   到JSON文档和   将JSON文档反序列化为   类型的实例。例如,你   可以创建一个名为Person的类型   包含必要的属性   数据,例如姓名和地址。您   然后可以创建和操纵一个   Person类的实例和写   JSON中的所有属性值   文件供以后检索。这个   以后可以使用JSON文档   反序列化为Person类或   另一个具有等效数据的类   合同。