0

我使用 Newtonsoft.Json 将 JSON 对象转换为字符串,反之亦然。System.Text.Json最近我在https://docs.microsoft.com/en-gb/dotnet/api/system.text.json?view=netcore-3.0中读到了。

我读了这篇文章,它比Newtonsoft.Json快。

使用 Newtonsoft.Json;

using Newtonsoft.Json;
Product product = new Product();    
product.Name = "Apple";
product.ExpiryDate = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small", "Medium", "Large" };    
string output = JsonConvert.SerializeObject(product);
//{
//  "Name": "Apple",
//  "ExpiryDate": "2008-12-28T00:00:00",
//  "Sizes": [
//    "Small",
//    "Medium",
//    "Large"
//  ]
//}

Product deserializedProduct = JsonConvert.DeserializeObject<Product>(output);

使用 System.Text;

using System.Text.Json;
using System.Text.Json.Serialization;

Product product = new Product();    
product.Name = "Apple";
product.ExpiryDate = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small", "Medium", "Large" }; 
string jsonString = JsonSerializer.Serialize(product);

var objproduct = JsonSerializer.Deserialize<Product>(jsonString);
4

2 回答 2

0

是的你可以。除非您遇到一些问题,否则没有人会阻止您。但是在一个项目中会有一些指导方针,所以最好遵循指导方针,如果你正在实施一些新的东西,最好与团队讨论然后实施。

于 2019-11-18T06:52:32.413 回答
0

System.Text.Json 中默认的 Html 转义就是一个不同的例子。

空值和循环引用处理是其他一些区别。

System.Text.Json 自 .NET Core 3.0 起不序列化字段。

System.Json.Text 不是 Json.NET 的一对一替代品。

于 2019-11-18T07:57:44.410 回答