在AspNetCore的WebApi中json序列化日期和属性名的技巧

原创
2017/12/14 17:11
阅读数 6.4K

在Startup类中设置json整体序列化方法:

services.AddMvc()
  .AddJsonOptions(options =>
  {
    // 格式化json输出的日期格式
    options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
    options.SerializerSettings.ContractResolver = new DefaultContractResolver
    {
      NamingStrategy = new SnakeCaseNamingStrategy()  // json属性名下划线命名方式
    };
  });

注解的方式改变日期格式(适合需要特殊处理日期格式的地方):

    /// <summary>
    /// json属性值转为日期
    /// </summary>
    public class DateConverter : IsoDateTimeConverter
    {
        /// <summary>
        /// 类构造
        /// </summary>
        public DateConverter()
        {
            base.DateTimeFormat = "yyyy-MM-dd";
        }
    }

然后在需要序列化的地方加上:

[JsonConverter(typeof(DateConverter))]
public DateTime BirthDate { get; set; }

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部