代码之家  ›  专栏  ›  技术社区  ›  DavidAndroidDev

ASP.netMVC-带有DateTime的模型,尝试为jqGrid的Json()序列化

  •  3
  • DavidAndroidDev  · 技术社区  · 14 年前

        [DataContract]
        public class DeviceModel
        {
            [DataMember(Order=1)]
            public string Alias { get; set; }
    
            [DataMember(Order = 2)]
            public string Location { get; set; }
    
            [DataMember(Order = 3)]
            public string State { get; set; }
    
            [DataMember(Order = 4)]
            public DateTime? DateCreated { get; set; }
    
            [DataMember(Order = 5)]
            public string RatePlan { get; set; }
    
            public DeviceModel()
            {
                Alias = null;
                Location = null;
                State = null;
                DateCreated = null;
                RatePlan = null;
            }
        }
    

    如您所见,此模型包含一个DateTime对象。我使用这个模型作为我们正在使用的jqGrid插件的数据。唯一的问题是,当网格加载时,DateCreated字段显示“/Date(1285128000000)/”,而不是可读的日期。我在这里读过一些其他的帖子,但我觉得它们不太适合我所要找的。我正在寻找一种方法来格式化这个日期时间字段为一个人类可读的字符串?建议?

    2 回复  |  直到 14 年前
        1
  •  4
  •   Oleg    14 年前

    Date 类型。数据协定序列化程序支持 more types . 例如 DateTime , DateTimeOffset TimeSpan , Guid , Uri XmlQualifiedName . 如果您将数据发送到客户机,而客户机也使用数据协定序列化程序来反序列化数据,则可以使用数据类型中的任何数据类型,而不会出现任何问题。

    IList<T> 那你就没问题了。例如,根据默认的jqGrid,等待 ISO日期格式 : Y-m-d Y , m d . 如果您将服务器上的数据转换为Y-m-d格式并使用 formatter:'date' colModel 你的问题会解决的。

    您还可以在客户端使用 custom formatter 以及 custom unformatter .

        2
  •  0
  •   Community miroxlav    7 年前