在.NET Web API 设置响应输出 Json 数据格式常用的两种方式
前言
在 ASP.NET Core Web API 中设置响应输出 Json 数据格式常用以下两种方式:可以通过添加System.Text.Json或Newtonsoft.JsonJSON 序列化和反序列化库在应用程序中全局设置接口响应的 Json 数据格式。
注意:本文示例使用的是新的 Minimal API 模式。
JSON 序列化和反序列化库
System.Text.Json
System.Text.Json 是 .NET Core 3.0 及以上版本中内置的 JSON 序列化和反序列化库。
Newtonsoft.Json
Newtonsoft.Json 是一个功能强大且灵活的.NET JSON 序列化和反序列化库,用于在.NET 应用程序中处理 JSON 数据。
需求设置统一格式
修改属性名称的序列化方式,在.Net Core 中默认使用小驼峰序列化 Json 属性参数,前端想要使用与后端模型本身命名格式输出(如:UserName)。
日期类型默认格式化处理,设置为:yyyy-MM-dd HH:mm:ss。
未配置之前的 API 输出 Json 数据
UserInfoModel
复制代码
UserInfoController
复制代码
输出 Json 数据
System.Text.Json 程序全局配置
添加自定义时间输出格式类(DateTimeJsonConverter)
复制代码
在 Program.cs 中全局配置
复制代码
配置后输出的 Json 数据
Newtonsoft.Json 程序全局配置
说明
在.NET 3.0 及其以上的版本使用 Newtonsoft.Json 需要通过安装 Microsoft.AspNetCore.Mvc.NewtonsoftJson 包来进行配置(注意假如提示该包安装失败可以尝试安装其他版本的包)。
在 Program.cs 中全局配置
复制代码
配置后输出的 Json 数据
参考文章
https://learn.microsoft.com/zh-cn/aspnet/core/web-api/advanced/formatting?view=aspnetcore-8.0
版权声明: 本文为 InfoQ 作者【追逐时光者】的原创文章。
原文链接:【http://xie.infoq.cn/article/49fcc7a50bbd869c4e589f862】。文章转载请联系作者。







评论