NETCore及以后版本WebApi时间格式返回出现+08:00的问题

转载地址:https://www.cnblogs.com/lxshwyan/p/10983974.html

最近项目有个问题,每个API接口里返回的时间格式中都带T如:【2021-12-13 18:02:51.1860128+08:00】,其实这个主要是ASP.Net Core自带时间格式列化时间格式设置的,我们只需要替换序格式化时间格式就可以;

       {
           UserInfo userInfo = new UserInfo()
           {
               Name = "zhangsan",
               BirthDay = DateTime.Now 
           };
           return Ok(userInfo);
       }

二、没有替换格式化时间之前效果:

{“name”:"zhangsan","birthday":"2021-12-13 18:02:51.1860128+08:00" }

解决方案:在注入mvc服务的时候设置格式化参数

具体实现:在Startup类的ConfigureServices方法中指定

services.AddControllers().AddNewtonsoftJson(options =>
            {
                options.SerializerSettings.ContractResolver = new DefaultContractResolver();
                options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
            });

替换格式化时间之后效果:

{“name”:"zhangsan","birthday":"2021-12-13 18:02:51" }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容