【发布时间】:2016-05-16 19:47:20
【问题描述】:
我之前根据存储在用户个人资料中的时区在我的应用中实现了日期。据我所知,这在最初实施时工作正常。
我正在显示的数据库中存储的所有日期都是 UTC,这意味着当我保存日期(在 C# 中)时,我使用 DateTime.UtcNow。
这是我在 Angular 中使用的 momentjs 代码,用于以实际值呈现我的日期:
moment.utc('2016-05-16T19:14:06.51').utcOffset('-05:00:00').format('M/D/YYYY h:mma');
-05:00:00 偏移量适用于东部时间。我预计上面指定的 UTC 日期会显示为下午 3:15,而是显示为下午 2:15。
为了仔细检查我没有使用错误的日期值,我进入 MS SQL Management Studio 并运行 SELECT GETUTCDATE(),它返回了 2016-05-16 19:44:05.850。目前是下午 3 点 44 分,但使用上面的 momentjs 代码正在渲染下午 2 点 44 分。
发生了什么事?我是否缺少一些处理夏令时的 momentjs 代码?
【问题讨论】:
标签: angularjs datetime momentjs