Tor*_*ain 4 c# postgresql nodatime
我们正在实现 PostgreSQL,并决定使用 NodaTime 代替标准 .NET DateTime。PostgreSQL 有一个“带有时区的时间戳”类型,NodaTime 通过 SystemClock.Instance.Now 方法返回带有时区的日期和时间值。但是,SystemClock.Instance.Now (2015-07-17T13:22:52Z) 返回的值不能直接写入 PostgreSQL 字段。是否有处理 NodaTime/PostgreSQL 实现的最佳实践?
据我了解,“带有时区的时间戳”无论如何都是一个用词不当——它只是“你提供一个带有本地值的时区,PostgreSQL将存储UTC”......换句话说,这实际上是一个额外的转换,而不是存储更多数据。
如果您只是想存储Instant, 那么timestamp作为数据类型应该没问题。在将值获取到数据库方面,您可能应该将其转换为 a DateTimeOffset,然后让驱动程序处理它。Instant.ToDateTimeOffset您将需要在存储和Instant.FromDateTimeOffset检索时使用。
| 归档时间: |
|
| 查看次数: |
1941 次 |
| 最近记录: |