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

Jon*_*han 9 c# serialization json poco .net-3.5

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

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

Jon*_*eet 24

是的,我在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);
Run Code Online (Sandbox Code Playgroud)


And*_*are 10

试试DataContractJsonSerializer:

将对象序列化为JavaScript Object Notation(JSON)并将JSON数据反序列化为对象.

使用DataContractJsonSerializer类序列化类型的实例为JSON文件和反序列化JSON文档到一个类型的实例.例如,您可以创建名为Person的类型,其中包含包含基本数据的属性,例如名称和地址.然后,您可以创建和操作Person类的实例,并在JSON文档中写入其所有属性值,以便以后检索.稍后可以将此JSON文档反序列化为Person类或具有等效数据协定的另一个类.