【发布时间】:2020-08-13 08:51:01
【问题描述】:
我已将DateTimeOffset 存储到如下文本文件中,
DateTimeOffset.Now.ToString()
我注意到它存储为"8/13/2020 2:11:31 PM +05:30",不知道为什么要添加 +05:30 以及如何将其删除到 +00:00。
我将其他DateTimeOffset 保存到数据库中,它的返回为+00:00,在下面的快照中x 实际上小于z,但这里出错了。我保存到文本文件的原因将偏移量添加为 +05:30。
如何解决这个问题,数据库端我没有任何控制权,在保存到文本文件时,我怎样才能消除存储时间而没有偏移?
- 来自数据库的“x”值
-
z的值来自读取的文本文件
【问题讨论】:
-
使用
UtcNow而不是Now,您将获得UTC时间,其中偏移量始终为00:00。 -
UtcNow,我不能使用
-
您是否想在另一个日期之前建立一个日期?如果是这样,请改用记号
-
如果你想存储 local 时间没有偏移,那么你为什么要首先使用
DateTimeOffset呢?请改用DateTime:DateTime.Now.ToString()。或者如果你必须使用DateTimeOffset,你可以这样做:DateTimeOffset.Now.ToString("M/d/yyyy h:mm:ss tt")。另一方面,如果要显示 UTC 时间,则使用UtcNow;为什么不能用?
标签: c#