c# - DateTime 应该存储在世界各地都可以访问的网站中的 UTC 时间还是(服务器的)本地时间

标签 c# asp.net database datetime

像购物车这样的系统有什么影响,其中一个客户(买家)坐在一个时区,另一个(卖家)在另一个时区,并且日期在一端发生了变化。所以一个购买的客户的报告数据与另一个不同?

最佳答案

如果它代表一个时间点,您绝对应该使用 UTC。在这种特殊情况下,这听起来像是正确的选择。

某些其他情况下,您想要存储本地时间 - 例如,表示一个应该在本地时间上午 8 点响起的闹钟,无论用户处于什么时区。这通常对日历应用程序很有用...并且您不会在此处存储单个时间点。

为什么值得在 UTC 中存储时间点的一个具体示例是,由于夏令时转换,本地时间可能会模棱两可 - 如果时钟从凌晨 2 点倒回到凌晨 1 点,那么本地时间将是凌晨 1:30两次。在 UTC 中,没有这种歧义。

关于c# - DateTime 应该存储在世界各地都可以访问的网站中的 UTC 时间还是(服务器的)本地时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2099819/

相关文章:

c# - 使用 prism 5.0 开发 wpf 插件

c# - 如何从位图中获取 Bitsperpixel

c# - ASP.NET 中的布局问题 GridView

c# - 使用表单例份验证获取当前用户 ID(不是名称)?

c# - 如何获取本地文件的id

database - 是否可以将类图转换为关系数据库图?

c# - 允许空外键 GUID

c# - 抽象基类强制每个派生类都是单例

asp.net - 如何替换http header 改变Accept-Encoding以改变asp.net中的用户代理?

c# - 适用于 Windows Phone 8 的简单 SD 卡兼容数据库/NoSql 解决方案