【发布时间】:2017-11-20 05:58:21
【问题描述】:
由于当前日期时间已过时,我无法在数据库中存储时间。我如何以编程方式更改系统的日期和时间,以便即使系统日期和时间不正确,存储的值也应该是正确的。我使用了时区,但它没有帮助,因为它获得了系统上设置的相同时间和日期。
var euTimeZone = TimeZoneInfo.FindSystemTimeZoneById("Pakistan Standard Time");
DateTime euTime = TimeZoneInfo.ConvertTime(System.DateTime.Now, TimeZoneInfo.Local, euTimeZone);
TimeSpan timeOfDay = euTime.TimeOfDay;
【问题讨论】:
-
简而言之:这不关你的事!至少它不是您的应用程序的任务。在系统中配置时间同步以解决此错误。应用可以检测到错误,但无法处理!
-
您的意思是每个系统都必须手动更正日期和时间?就像你提到的时间同步一样。
-
您不会“手动”更正系统时间。这就是 NTP 的用途和 @TomSchardt 所指的。
-
@user100020 - 请澄清一下,您是说您不想相信您自己的服务器时钟设置正确(这将是操作系统问题)?还是它们设置正确但您想转换为特定时区(这将是代码问题)?