zoukankan      html  css  js  c++  java
  • Net Core 3.1 处理JSON返回的时间格式

    在网上找了好多好多的帖子都是2.x的,代码放进去一直报错没法用,刚刚准备关机找到一个可以用的~特此记录一下。

    直接把这一行放进去,这个时候DatetimeJsonConverter会报错,不要慌。接着下一步

    1.  
      public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    2.  
      {
    3.  
      services.AddControllers()
    4.  
      .AddJsonOptions(configure => {
    5.  
      configure.JsonSerializerOptions.Converters.Add(new DatetimeJsonConverter());
    6.  
      });
    7.  
      }

    然后就是直接在这个startup类里下边再写一个方法

    1.  
      public class DatetimeJsonConverter : JsonConverter<DateTime>
    2.  
      {
    3.  
      public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
    4.  
      {
    5.  
      if (reader.TokenType == JsonTokenType.String)
    6.  
      {
    7.  
      if (DateTime.TryParse(reader.GetString(), out DateTime date))
    8.  
      return date;
    9.  
      }
    10.  
      return reader.GetDateTime();
    11.  
      }
    12.  
       
    13.  
      public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options)
    14.  
      {
    15.  
      writer.WriteStringValue(value.ToString("yyyy-MM-dd"));
    16.  
      }
    17.  
      }

    这样就可以啦~ 我这里是不要具体时间的,所以直接写了yyyyMMdd  如果你们的系统需要具体时间 也可以随意修改哦~加上HHmmssfff就好了。

  • 相关阅读:
    等待通知--wait notify
    表单重复提交与解决
    Cookie Session 与Token
    springMVC实现登陆
    第11章 AOF持久化
    第10章 RDB持久化
    MyBatis动态SQL
    第4章 网络层
    第9章 数据库
    代理设计模式
  • 原文地址:https://www.cnblogs.com/chinasoft/p/14802602.html
Copyright © 2011-2022 走看看