How do I extract the date and time from a rest/WCF/enity/sql

本文关键字:rest WCF sql enity from time do extract the and date | 更新日期: 2023-09-27 18:34:57

我使用 ResponseFormat = WebMessageFormat.Json 通过 WCF 返回 JSON从使用实体框架访问的 SQL 后端。

我的查询正在返回

    {
  "DateInserted": "/Date(1435640400000-0500)/",
  "DateUpdated": "/Date(1454699734160-0600)/",

其中插入到我的数据库中的日期是 2015-06-30 00:00:00.000和日期更新在我的数据库中是 2016-02-05 13:15:34.160

但是我无法找到有关 Date(( 字符串代表什么数字的任何信息,也无法找到日期时间转换为该字符串表示形式的位置,因此您可以分享的任何信息可能对我有所帮助。

How do I extract the date and time from a rest/WCF/enity/sql

DateTime 值以"/Date(700000

+0500(/"的形式显示为 WCF JSON 字符串,其中第一个数字(在提供的示例中为 700000(是自 1970 年 1 月 1 日午夜以来 GMT 时区(常规(非夏令时(时间(中的毫秒数。该数字可能为负数以表示较早的时间。示例中由"+0500"组成的部分是可选的,指示时间是本地类型 - 即,应在反序列化时转换为本地时区。如果不存在,则时间反序列化为 Utc。实际数字(在本例中为"0500"(及其符号(+或-(将被忽略。

以下 Javascript 函数仅使用日期字符串的第一部分创建新的 Javascript 日期,例如,自 1970 年 1 月 1 日午夜以来的毫秒数。Javascript Date 构造函数将创建一个具有正确语言环境时间的日期。

String.prototype.toDateFromWcfJsonString = function()
{
   return eval(this.replace(/'/Date'(([-|+]*'d+)(['+|-]'d+)*')'//, "new Date($1)"));
};

另请参阅 http://msdn.microsoft.com/en-us/library/bb412170(v=vs.90(.aspx。