在数据库中,日期存储为 DateTimeOffSet。在视图中,我们必须以本地日期时间显示日期。
由于在 jquery 中使用 UTC 更容易,我们必须将 datetimeoffset 作为 UTC 呈现给视图,并且 jQuery/javascript 应该完成将其转换为本地日期时间的工作。
我的问题是,我正在返回模型以查看,但不确定如何将 datetimeoffset 作为 UTC 返回以查看,或者这可以在 jQuery 中完成吗?
在数据库中,日期存储为 DateTimeOffSet。在视图中,我们必须以本地日期时间显示日期。
由于在 jquery 中使用 UTC 更容易,我们必须将 datetimeoffset 作为 UTC 呈现给视图,并且 jQuery/javascript 应该完成将其转换为本地日期时间的工作。
我的问题是,我正在返回模型以查看,但不确定如何将 datetimeoffset 作为 UTC 返回以查看,或者这可以在 jQuery 中完成吗?
这已在 mvc 视图中通过使用 date-time-in 作为 utc 属性来处理。
您应该始终将时间戳作为 UTC 存储在数据库中。
偏移量不仅取决于位置(例如时区),还取决于一年中的时间(夏令时)。因此,我在同一位置的偏移量因一年中的时间而异。这就是为什么对于大多数用户来说,存储偏移量在半年里隐含地是错误的。
您当然可以从偏移服务器端重新计算 UTC,但这永远不会对所有用户都有效 - 因为切换到夏令时发生在不同国家的不同日子。唯一始终绝对且可比较的是 UTC,这就是为什么您应该存储它并且只在客户端本地转换为本地时间。
因此,最好的方法是将您的数据库时间戳迁移到 UTC 一次,然后使用它。