使用从控制器操作返回的JSON.NET日期格式

时间:2013-01-24 00:40:57

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

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

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

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

  

“/日期(1358987787691)/”

但是,我知道MVC4默认使用json.net,而j​​son.net使用ISO8601格式作为日期。

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

  

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

为什么使用json.net返回Json(DateTime.Now)(貌似)?

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

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

但无济于事。

1 个答案:

答案 0 :(得分:1)

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