【问题标题】:Using JSON.NET date format returned from a controller action使用从控制器操作返回的 JSON.NET 日期格式
【发布时间】:2013-01-24 08:47:58
【问题描述】:

在我的 MVC4 项目中,我有一个控制器操作如下:

public ActionResult GetJson()
{
    var serialized = JsonConvert.SerializeObject(DateTime.Now);
    return Json(DateTime.Now, JsonRequestBehavior.AllowGet);
}

对浏览器的响应是旧的 ASP.NET 格式:

"/日期(1358987787691)/"

但是,我知道 MVC4 默认使用 json.net,而 json.net 使用 ISO8601 格式的日期。

在上面的代码中,序列化变量包含(我想要的):

"\"2013-01-24T13:39:12.7182079+13:00\""

为什么 return Json(DateTime.Now) 不(看似)使用 json.net?

我也尝试在我的 global.asx 中加入以下行:

var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter;
json.UseDataContractJsonSerializer = false;

但无济于事。

【问题讨论】:

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


【解决方案1】:

您可以在控制器工厂中进行一些更改并创建您的控制器,该控制器继承自标准控制器,但使用了自定义 json 格式化程序。

【讨论】:

    猜你喜欢
    • 2016-12-06
    • 1970-01-01
    • 1970-01-01
    • 2014-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-29
    相关资源
    最近更新 更多