本文转载自微信公众号《NET技术问答》,作者:Stackoverflow。转载本文请联系NET技术问答公众号。咨询区D.英文:最近准备将一个Asp.NetCoreWebAPI项目从2.2升级到3.0。在新版本中,我计划使用System.Text.Json来替换Newtonsoft格式化日期。我原来的格式化方法如下:'MM'-'dd'T'HH':'mm':'ssZ";});}如何使用新的System.Text.Json进行等效替换?答案区D.英文:可以自定义一个formatter来解决,参考下面的代码:;returnDateTime.Parse(reader.GetString());}publicoverrideTimefrivoidWrite,Uter(JsonSerializerOptionsoptions){writer.WriteStringValue(value.ToUniversalTime().ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ssZ"));}}然后在ConfigureServices()全局注册即可,如下代码所示:publicvoidConfigureServices(IServiceCollectionservices){services.AddControllers().AddJsonOptions(options=>{options.JsonSerializerOptions.Converters.Add(newDateTimeConverter());});}评论区这么巧前几天被前端用了小妹抱怨,问能不能在界面格式化日期...??????{"code":1,"isSucc":true,"data":{"id":1,"userType":"临时人员","userName":"xxx","companyName":"xxx","telphone":"xxxx","isAuthorize":false,"createTime":"2021-04-13T22:01:05.7705233+08:00",}}说实话这个createTime让我不舒服?????对了,项目是.NET5开发的,默认格式是System.Text.JsonTransformation...那怎么修改成通用的yyyy-MM-ddHH:mm:ss呢?方法和D.English大致相同,自定义一个DateTimeConverter即可。publicclassDateTimeConverter:JsonConverter
