在 .NET Core 3+ 项目中使用 Newtonsoft.Json

这篇博客介绍了如何在.NET Core 3.0和3.1项目中从System.Text.Json回退到使用Newtonsoft.Json。作者分享了需要安装的Nuget包以及在不同项目设置中添加NewtonsoftJson支持的代码片段,帮助开发者在面临紧迫截止日期时快速迁移。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近我在 .NET Core 3.0 和 3.1 项目中使用了很多。升级现有的 2.2 项目和几个新的未开发项目。 我必须做的每一件事就是从使用新的 System.Text.Json 包切换回使用 Newtonsoft.Json

在几乎所有项目中,我实际上都尝试继续使用 System.Text.Json,但在现有项目中,我没有时间在我的模型上切换自定义 JsonConvertersNewtonsoft.Json 特定属性之类的东西。

在新项目中,我总是会在 Newtonsoft 中做到这一点。 尽管我很想尝试这个闪亮的新东西,但我有自己的截止日期,这让我无法尝试新功能。

所以如果你和我在同一条船上,只需要把东西拿出来。 您需要的第一件事是安装以下 Nuget 包:

Install-Package Microsoft.AspNetCore.Mvc.NewtonsoftJson

然后你需要向你的 IMVCBuilder 添加一个特定的调用。 这将根据您设置项目的方式而有所不同。 如果您要从现有项目迁移,您将调用“AddMvc()”,然后您可以像这样添加它:

services.AddMvc().AddNewtonsoftJson();

但是,在新的 .NET Core 3+ 项目中,您有一组不同的调用来替换 MVC。 所以你可能会有以下之一:

services.AddControllers().AddNewtonsoftJson();
services.AddControllersWithViews().AddNewtonsoftJson();
services.AddRazorPages().AddNewtonsoftJson();

如果这是一个 Web API,您可能会有 AddControllers,但根据您的项目设置,您也可能有其他的。 将 AddNewtonsoftJson() 添加到最后意味着它将“恢复”回使用 Newtonsoft 而不是 System.Text.Json

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值