【发布时间】:2021-06-02 21:32:33
【问题描述】:
我正在测试一段代码,发现一个非常奇怪的行为。当我使用DateTime.MinValue,添加分钟并将其转换为 UTC 时,我的本地时区和 UTC 之间似乎有 58 分钟的差异。我在中欧(冬季+1或夏季+2)。这怎么可能是58分钟?我希望 1 小时偏移而不是 58 分钟。我在 Linux 上使用 .net 内核。
var x1 = DateTime.MinValue.AddMinutes(61);
var x1ticks = x1.Ticks;
var x1kind = x1.Kind;
var y1 = x1.ToUniversalTime();
var y1tickes = y1.Ticks;
var y1kind = y1.Kind;
var z1 = TimeZoneInfo.ConvertTimeToUtc(x1, TimeZoneInfo.Local);
var z1ticks = z1.Ticks;
var z1kind = z1.Kind;
使用评估值编写 sn-p 代码:
【问题讨论】:
-
你是通过设置断点来运行的吗?
标签: c# .net datetime .net-core