【问题标题】:How to return date with space separator instead of T character in MVC4 or in Json.NET如何在 MVC4 或 Json.NET 中使用空格分隔符而不是 T 字符返回日期
【发布时间】:2013-11-17 22:09:44
【问题描述】:

如何以 ISO 格式以 json 格式返回日期,但在 ASP.NET MVC4 应用程序控制器中用空格而不是 T 分隔

ASP.NET 标准 Json() 方法返回 Microsoft 格式的日期,并且看起来无法自定义。

我试过 Newtonsoft Json.NET。

JsonConvert.SerializeObject(Data)

以正确的 ISO 格式返回日期,但带有 T 字符:

2013-11-17T18:14:32

如何返回日期以便使用空格而不是像 T 一样

2013-11-17 18:14:32

【问题讨论】:

    标签: asp.net-mvc json asp.net-mvc-4 json.net javascriptserializer


    【解决方案1】:

    您可以通过创建一个新的IsoDateTimeConverter 实例、指定所需的DateTimeFormat,然后将该转换器传递给SerializeObject() 来做到这一点。

    演示:

    var data = new { MyDate = new DateTime(2013, 11, 17, 18, 41, 26, 835) };
    
    IsoDateTimeConverter dateConverter = new IsoDateTimeConverter
    {
        DateTimeFormat = "yyyy'-'MM'-'dd HH':'mm':'ss.FFFFFFFK"
    };
    
    string json = JsonConvert.SerializeObject(data, dateConverter);
    
    Console.WriteLine(json);
    

    输出:

    {"MyDate":"2013-11-17 18:41:26.835"}
    

    【讨论】:

      猜你喜欢
      • 2020-09-06
      • 1970-01-01
      • 2016-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多