野田佳肴:了解是否在夏令时中

时间:2014-07-29 09:25:34

标签: nodatime

如何查看当前本地时间是否按夏令时调整。 基本上相当于NodaTime

中的DateTime.Now.IsDaylightSavingTime()

我看到this,但无法翻译到Noda ...

2 个答案:

答案 0 :(得分:3)

Lasse的回答是正确的,但可以更简单:

从v1.3起,您可以使用ZonedDateTime.IsDaylightSavingTime

var zone = ...;
var now = ..;
var daylight = now.InZone(zone).IsDaylightSavingTime();

从v2.0开始(在撰写本文时尚未发布),您可以使用ZonedClock使原始转换更简单:

var now = zonedClock.GetCurrentZonedDateTime();
var daylight = now.IsDaylightSavingTime();

答案 1 :(得分:2)

你可以试试这个:

var localTimeZone = DateTimeZoneProviders.Tzdb.GetSystemDefault();
var now = SystemClock.Instance.Now;
var interval = localTimeZone.GetZoneInterval(now);
// inspect interval.Savings