.net core3.1 web api中使用newtonsoft替换掉默认的json序列化组件
在微软的文档中,有着较为详细的替换教程
https://docs.microsoft.com/zh-cn/aspnet/core/web-api/advanced/formatting?view=aspnetcore-3.1
但是微软的文档并不算太详细,对于新手而言,着实不算太友好。以下是我基于微软给出的方案,列出的更为详尽的方案。
第一步,引入包
第二步,修改sartups.cs中的 ConfigureServices
在web api项目中,加入以下代码:
#region newtonsoft
.AddNewtonsoftJson(options =>
{
//修改属性名称的序列化方式,首字母小写
options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
//修改时间的序列化方式
options.SerializerSettings.Converters.Add(new IsoDateTimeConverter() { DateTimeFormat = "yyyy/MM/dd HH:mm:ss" });
}
);
#endregion
至此,替换步骤结束。
接下来,让我们看一下是否是真的替换成功。
首先,在控制器里,添加一个get方法,输出类型为jsonresult
在GetCartInfo方法中,返回类型如下
这是标准的C#命名方式,而我们前面配置的newtonsoft中,将属性首字母设置为了小写
接下来运行项目,使用postman测试接口,测试结果如下:
可以发现,接收到的json数据中,所有名称都是小写开头,说明我们前面的配置已经生效。
至此,替换成功。
最新文章
- ubuntu 下更新PHP版本 ZT
- LINUX测试环境部署nginx(五)
- Quartz定时任务学习(二)web应用/Quartz定时任务学习(三)属性文件和jar
- 栈实现java
- POJ 2411 Mondriaan&;#39;s Dream (dp + 减少国家)
- nmake学习笔记
- 解决win10 VC++6.0 应用程序无法正常运行 0xc0000142
- JDK源码分析(四)—— ConcurrentHashMap
- Python- redis缓存 可达到瞬间并发量10W+
- 解决 Entity Framework 6.0 decimal 类型精度问题
- IS-IS笔记
- 以太坊客户端Ethereum Wallet与Geth区别简介
- 对一个结果集(List)进行手动分页
- day24 面向对象三大特性之封装
- pip安装python包出现Cannot fetch index base URL http://pypi.python.org/simple/
- 彻底关闭window10 专业版 企业版 windows defender
- 动态修改css 规则
- 2018.07.20 bzoj1614: Telephone Lines架设电话线(二分+最短路)
- Sass进阶之路,之一(基础篇)
- POJ-3662 Telephone Lines---二分+最短路+最小化第k+1大