解决查询时间格式带T的问题

一、asp.net core 3.1中解决时间带T的方法

1.添加扩展类

public class DatetimeJsonConverter : JsonConverter<DateTime>
{
  public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
  {
    if (reader.TokenType == JsonTokenType.String)
    {
      if (DateTime.TryParse(reader.GetString(), out DateTime date))
      return date;
    }
    return reader.GetDateTime();
  }
  public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options)
  {
    writer.WriteStringValue(value.ToString("yyyy-MM-dd HH:mm:ss"));
  }
}

2.startup中 ConfigureServices  

services.AddMvc().AddJsonOptions(options =>
{
  options.JsonSerializerOptions.Converters.Add(new DatetimeJsonConverter());
});

posted @ 2021-08-27 10:21  o0无痕0o  阅读(1062)  评论(0编辑  收藏  举报