1

我正在尝试将 a 转换list<T>为 JSON 数据,然后绑定到 Jqgrid。

问题是列表集合包含作为日期时间的列之一。

当我看到生成的 JSON 响应时,日期时间没有正确序列化。它是这样来的:

 /Date(1267408935000)/

当列表集合包含日期时间列时,如何正确将其转换为 JSON 数据。

请帮忙..

4

3 回答 3

5

如果你使用formatter: "date"了对应的列定义,colModel那么jqGrid会自动进行对应的转换。只有当您使用一些非常旧版本的 jqGrid 时才会出现问题(请参阅描述从 jqGrid 3.8.2 开始引入相应支持的文档)

于 2013-10-15T09:31:16.363 回答
2

当您说它“未正确序列化”时-对我来说这看起来不错。这是 JSON 日期的一种格式,来自 JavascriptDate构造函数,将“自 Unix 纪元以来的毫秒数”作为参数。例如,您给出的值是 2010 年 3 月 1 日 02:02:15 UTC。

我希望Javascript反序列化这些数据绝对没问题 - 但当然不一定是这种情况......如果它真的给你带来了问题,请阅读Scott Hanselman 关于 JSON 日期/时间格式的博客文章- 特别是,它解释了如何将 JSON 格式化程序换成Json.NET,它默认使用 ISO-8601 格式。

于 2013-10-15T09:27:52.497 回答
0

使用字符串属性而不是DateTime创建类。

public class MyJsonModel
{
   public string DateTimeString { get;set; }
}

var model = new MyJsonModel();
model.DateTimeString = DateTime.Now.ToString("MM-dd-yyyy"); //Any format you like
于 2013-10-15T09:30:35.503 回答