Asp.net mvc 4 ASP MVC 4 JsonResult如何使用ISO 8601日期?
我刚刚安装了ASP MVC 4,我的JSON日期仍然以旧格式返回Asp.net mvc 4 ASP MVC 4 JsonResult如何使用ISO 8601日期?,asp.net-mvc-4,Asp.net Mvc 4,我刚刚安装了ASP MVC 4,我的JSON日期仍然以旧格式返回{“timestamp”:“\/Date(1348070400000)\/”} 我想他们应该以2012-02-18T00:54:06.8447642Z的格式回来,而我什么也不做 注意:JSON.NET现在是ASP.NET Web API不可分割的一部分,因此您可以 只要我们把它从盒子里拿出来 我的控制器看起来像这样 public JsonResult Test() { return Json(new {timestamp =
{“timestamp”:“\/Date(1348070400000)\/”}
我想他们应该以2012-02-18T00:54:06.8447642Z
的格式回来,而我什么也不做
注意:JSON.NET现在是ASP.NET Web API不可分割的一部分,因此您可以
只要我们把它从盒子里拿出来
我的控制器看起来像这样
public JsonResult Test()
{
return Json(new {timestamp = DateTime.Now()}, JsonRequestBehavior.AllowGet);
}
我怎样才能让它工作?我是否需要在Global.asax.cs或Web.config中进行更改
我的印象是,他们应该马上回来
格式2012-02-18T00:54:06.8447642Z,我什么也不做
这仅适用于ASP.NET Web API(ApiControllers)。但是返回JsonResults的标准ASP.NET MVC控制器操作仍然使用JavaScriptSerializer
。因此,如果您想使用ISO8601日期,可以通过编写一个。只需将适当的转换器添加到序列化程序使用的设置中:
SerializerSettings.Converters.Add(new IsoDateTimeConverter());
您可能会问,为什么他们没有为标准控制器实现JSON.NET。我想这是出于兼容性的原因,因为这将是一个重要的突破性变化。但是我可能会让JSON.NET成为那些升级现有应用程序的默认序列化程序,并提供一个回退选项。Hi,我有一个ActionResult返回一个带有模型的PartialView,我希望使用JsonNetResult类对模型进行序列化。。。有线索吗?感谢您的帮助,如果您想返回JSON,那么您应该返回一个自定义ActionResult,它使用JSON.NET作为序列化程序,而不是从您的操作返回PartialView,例如JsonNetResult。