【发布时间】:2017-11-21 14:04:25
【问题描述】:
storeDateTimeAsTicks 是最近 SQLite Net 实现中的默认行为,与存储为字符串相比,它还具有性能优势。
不幸的是,当将 DateTime 刻度保存到数据库时,它会忽略时区,并且在从数据库中读取回 DateTime 时,它会使用刻度初始化 DateTime 对象,从而使对象的 DateTimeKind 未指定。
鉴于 DateTime 的工作方式,这意味着要从数据库中获取带有 DateTimeKind.Local 的 DateTime,您需要在保存到数据库之前转换为 UTC,并在从数据库中读取后转换为本地时间。
有没有办法让 SQLite Net 自己处理往返? 我想避免在序列化和反序列化期间对对象进行预处理和后处理。
【问题讨论】:
标签: c# datetime sqlite-net