我有一个用asp.net mvc 4制作的web应用程序
在Global.asax中,我添加了IsoDateTimeConverter
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.Converters.Add(
new IsoDateTimeConverter { DateTimeFormat = "dd-MM-yyyy hh:mm" });
}
我有一个ActionResult
public ActionResult GetDate()
{
DateTime dateTime = DateTime.Now;
return Json(dateTime, JsonRequestBehavior.AllowGet);
}
但是,这个actionResult会返回:
"\/Date(1365060823129)\/"
我缺少什么?
答案 0 :(得分:6)
我相信你对所有“不精确”的命名感到有些困惑,很多人最近都在使用它。 ASP.NET Web API 使用JsonFormatter
(以及一般的格式化程序)。
您没有使用 ASP.NET Web API ,您正在使用 ASP.NET MVC 4 (这些是完全分离的技术)。
在 ASP.NET MVC 4 中,序列化逻辑仍在JsonResult
内部JavaScriptSerializer
内完成,格式化程序未在此处应用。
如果要将 Json.NET (及其IsoDateTimeConverter
)与 ASP.NET MVC 4 一起使用,您仍需要创建自己的{{1如here所述。