欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Json.net日期格式化設(shè)置方式

 更新時(shí)間:2018年11月11日 15:38:56   作者:_York  
這篇文章主要介紹了Json.net日期格式化設(shè)置方式,文中給大家補(bǔ)充介紹了json.net 使用屬性定義日期的序列化格式,需要的朋友可以參考下

Json.net默認(rèn)的時(shí)間格式化后帶T,不符合一般的業(yè)務(wù)要求,重新設(shè)置JSON.NET的默認(rèn)日期格式化方式,代碼如下:

 /// <summary>
    /// Json.net默認(rèn)轉(zhuǎn)換設(shè)置
    /// </summary>
    private static void DefaultJsonConvertSetting()
    {
      JsonSerializerSettings setting = new JsonSerializerSettings();
      JsonConvert.DefaultSettings = new Func<JsonSerializerSettings>(() =>
      {
        //日期類(lèi)型默認(rèn)格式化處理
        setting.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat;
        setting.DateFormatString = "yyyy-MM-dd HH:mm:ss";

        //空值處理
        //setting.NullValueHandling = NullValueHandling.Ignore;

        return setting;
      });
    }

下面看下Json.Net 使用屬性定義日期的序列化格式

如果一個(gè)實(shí)體類(lèi)里所有的時(shí)間即DateTime類(lèi)型的字段,都處理成統(tǒng)一格式的話,可以使用如下方式:

IsoDateTimeConverter timeFormat = new IsoDateTimeConverter();
      timeFormat.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
      JsonConvert.SerializeObject(stu, Newtonsoft.Json.Formatting.Indented, timeFormat);

如果需要返回的格式不一致,比如有的需要年月日,有的是年月日時(shí)分秒,則這樣控制不了??梢酝ㄟ^(guò)定義屬性來(lái)解決

public class student
  {
    public string Name { get; set; }
    public int Age { get; set; }
    [JsonConverter(typeof(DateFormat))]
    public DateTime BirthDay { get; set; }
    [JsonConverter(typeof(DateTimeFormat))]
    public DateTime CreateTime { get; set; }
  }
  public class DateFormat:IsoDateTimeConverter
  {
    public DateFormat()
    {
      base.DateTimeFormat = "yyyy-MM-dd";
    }
  }
  public class DateTimeFormat:IsoDateTimeConverter
  {
    public DateTimeFormat()
    {
      base.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
    }
  }

實(shí)例演示:

student stu = new student()
       {
         Name = "張三",
         Age = ,
         BirthDay = new DateTime(, , ),
         CreateTime = DateTime.Now
       };
       string result = JsonConvert.SerializeObject(stu);

result = {"Name":"張三","Age":30,"BirthDay":"1986-07-16","CreateTime":"2016-01-16 23:13:34"}

這樣控制的粒度更細(xì)了

總結(jié)

以上所述是小編給大家介紹的Json.net日期格式化設(shè)置方式,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

最新評(píng)論