【问题标题】:.NET & SQL Server - Datetime or DateTimeOffset? [duplicate].NET & SQL Server - 日期时间或日期时间偏移? [复制]
【发布时间】:2018-03-10 21:08:30
【问题描述】:
自从我使用 .NET 以来,我一直在 .NET 和 SQL Server DateTime 数据类型中存储日期和时间数据。我最近意识到 .NET 和 SQL Server 中都存在 DateTimeOffset 类型。
DateTimeOffset 类型现在应该成为我处理和存储日期和时间的默认数据类型吗?
如果不是,我什么时候会使用其中一个?
【问题讨论】:
标签:
c#
.net
sql-server
datetime
datetimeoffset
【解决方案1】:
日期时间
在我的情况下,我使用 Datetime,因为它更容易,而且我从开始编程就一直在使用它。
DateTimeOffest
DateTimeOffset 结构表示一个日期和时间值,以及一个表示该值与 UTC 相差多少的偏移量。因此,该值始终明确地标识一个时间点。
DateTimeOffset 类型包括 DateTime 类型的所有功能以及时区感知。这使其适用于执行以下操作的应用程序:
请根据您的需要使用。在我的情况下,我一直在使用 DateTime,它根本没有给我带来任何问题,但是如果你喜欢 OffsetDateTime。