1

我正在尝试获取设备(Windows 手机)的时区。我使用了这个类和属性 BaseUtcOffset。我住在约旦,本来应该给我+3小时,但结果却给了我+2。我认为它是夏令时,但我不知道如何使用它,有什么想法吗?

var x = TimeZoneInfo.Local.BaseUtcOffset;  // x.Hours = 2

来自 timeanddate.com 的正确时区

4

2 回答 2

2

你应该使用GetUtcOffset().

BaseUtcOffset 属性返回 UTC 与时区标准时间之间的差异;GetUtcOffset 方法返回 UTC 与特定时间点的时区时间之间的差异。

于 2011-08-11T14:27:45.050 回答
1

这才是正确的回应。时区比 UTC 早 2 小时。当地时间比 UTC 时间早 3 小时。

您可能想查看GetUtcOffset()IsDaylightSavingsTime()

于 2011-08-11T14:30:27.843 回答