您现在的位置是:网站首页> .NET Core
Asp.Net Core 3.1返回JsonResult时时间格式处理
- .NET Core
- 2022-02-05
- 984人已阅读
定义一个继承System.Text.Json.Serialization.JsonConverter的类,实现其Read 和 Write两个抽象方法
复制代码
public class DateTimeConverter : JsonConverter<DateTime>
{
public string DateTimeFormat { get; set; } = "yyyy-MM-dd HH:mm:ss";
public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) => DateTime.Parse(reader.GetString());
public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options) => writer.WriteStringValue(value.ToString(this.DateTimeFormat));
}
复制代码
然后在Startup中添加AddJsonOptions来设置时间的格式
复制代码
services.AddMvc(options =>
{
options.EnableEndpointRouting = false;
// 添加全局异常处理
options.Filters.Add(typeof(GlobalExceptionFilter));
}
).AddJsonOptions
(
option =>
{
//统一设置JsonResult中的日期格式
option.JsonSerializerOptions.Converters.Add(new DateTimeConverter());
//option.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All);
}
).SetCompatibilityVersion(CompatibilityVersion.Version_3_0);
复制代码
上一篇:.NET Core 基础知识
下一篇:XML命名空间