我正在将 Asp.Net Core 2.2 Web API 迁移到 3.1
我注意到现在System.Int32现在由System.Text.Json序列化为字符串
之前 (2.2(:
{id: 1, ..}
在 (3.1( 之后:
{id: "1", ..}
编辑id 是 C# 中的 int 属性
因此,需要更改使用 Web API 的 Js - 我不急于进行的非常繁重的迁移。
我找到了以下选项:
保持牛顿软件 Json.Net 以进行序列化
这是一个解决方案。但我想跟上最新的技术!
为整数提供自定义转换器
它似乎在我的情况下不起作用
有没有办法告诉System.Text.Json中的新Json序列化程序将整数序列化为42而不是"42"?
在阅读了Hostel的建议并从新的Web Api ASP.NET Core 3.1应用程序进行了检查并看到了预期的行为后,我将我的Startup.cs与Visual Studio模板应用程序进行了比较。
我刚刚在Startup.ConfigureServices中添加了
services.AddControllers();
尽管缺乏缺少的服务,但控制器"工作"了,但没有达到预期。
也许是因为存在另一种添加其他服务的扩展方法。
感谢大家的仔细阅读、评论和提问