Pregunta

How do I find out if my current local time is adjusted by Daylight Savings or not. Basically the equivalent of DateTime.Now.IsDaylightSavingTime() in NodaTime

I saw this, but could not make the translation to Noda...

¿Fue útil?

Solución

Lasse's answer is correct, but it can be made simpler:

From v1.3 you can use ZonedDateTime.IsDaylightSavingTime:

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

And from v2.0 (unreleased at the time of writing) you can use ZonedClock to make the original conversion even simpler:

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

Otros consejos

You can try this:

var localTimeZone = DateTimeZoneProviders.Tzdb.GetSystemDefault();
var now = SystemClock.Instance.Now;
var interval = localTimeZone.GetZoneInterval(now);
// inspect interval.Savings
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top