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

提前一小时满日历

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

    我正在使用jquery插件呈现日历( http://arshaw.com/fullcalendar/ )问题是日期提前了一小时。我已经试着查了一下文件,找出这是在哪里发生的。

    它能节省白昼时间吗?我很笨。数据库中的日期是正确的,但一旦转换为UNIX时间戳,它们将丢失一个小时。

    我用这个把我的日期转换成时间戳。

    private double ConvertToTimestamp(DateTime value)
    {
        //create Timespan by subtracting the value provided from
        //the Unix Epoch
        var date = new DateTime(1970, 1, 1, 0, 0, 0, 0);
    
        TimeSpan span = (value - date.ToLocalTime());
    
        //return the total seconds (which is a UNIX timestamp)
        return (double)span.TotalSeconds;
    }
    

    但我相信问题不在哪里。

    谢谢您。

    3 回复  |  直到 13 年前
        1
  •  1
  •   theycallmemorty    14 年前

    你是否可能生活在一个遵守夏令时的世界上?这可以解释为什么你的约会提前一个小时。尝试提前到12月并添加一些日期。他们还有一个小时吗?

        2
  •  1
  •   sjngm quinti    13 年前

    我也遇到了类似的问题,并用以下方法解决了它:

    function _changeToLocal (localDate) {
          return new Date( localDate.getFullYear(), localDate.getMonth(), localDate.getDate(), 
             localDate.getHours(), localDate.getMinutes() + localDate.getTimezoneOffset());
    }
    

    假设这是一个时区相关的问题。 格伦特

        3
  •  0
  •   Boycs    14 年前

    我刚经历了一个类似的问题,当我从我的开发盒转移到AmazonEC2进行登台…我的Amazon实例上的区域设置是设置在美国西海岸,而不是我的时区(澳大利亚悉尼)。

    更改此设置,然后更新内置帐户(网络实例等)的区域设置,解决了日期呈现不正确的问题。