System.TimeZoneInfo có một phương thức được gọi là IsDaylightSavingTime, lấy đối tượng DateTime và trả về true nếu datetime được chỉ định rơi vào DST cho múi giờ đó. Có chức năng tương đương trong NodaTime hoặc cách khác để đạt được cùng một kết quả không?Tương đương System.TimeZoneInfo.IsDaylightSavingTime trong NodaTime là gì?
8
A
Trả lời
9
Bạn có thể nhận điều này từ ZoneInterval
. Đây là một phương pháp mở rộng sẽ giúp ích.
public static bool IsDaylightSavingsTime(this ZonedDateTime zonedDateTime)
{
var instant = zonedDateTime.ToInstant();
var zoneInterval = zonedDateTime.Zone.GetZoneInterval(instant);
return zoneInterval.Savings != Offset.Zero;
}
Bây giờ bạn có thể làm:
zdt.IsDaylightSavingsTime();
Nếu bạn không có một ZonedDateTime
, bạn có thể nhận được một từ một DateTimeZone
cộng hoặc một Instant
hoặc một LocalDateTime
. Hoặc bạn có thể xoa bóp phương pháp mở rộng này để lấy những tham số đó.
Cập nhật: Chức năng này hiện được bao gồm trong Noda Time v1.3 trở lên, do đó bạn không còn phải tự viết phương thức mở rộng.
Các vấn đề liên quan
- 1. Tương đương Response.Redirect trong Silverlight là gì?
- 2. Tương đương "sys.stdout.write()" trong Ruby là gì?
- 3. JVM tương đương trong C# là gì?
- 4. Tương đương C# của MsgWaitForMultipleObjects là gì?
- 5. Tương đương GWT của setTimeout là gì?
- 6. Python tương đương với Perlbrew là gì?
- 7. WPF tương đương với ControlPaint.Light là gì?
- 8. Tương đương .NET của JMX là gì?
- 9. Tương đương với | = trong Visual Basic là gì?
- 10. Tương đương issubclass của isinstance trong python là gì?
- 11. Tương đương với lớp Java BigDecimal trong C# là gì?
- 12. Tương đương với foldr, foldl trong Emacs Lisp là gì?
- 13. Tương đương với Linux mkdir -p trong Windows là gì?
- 14. Tương đương với InnerText trong LINQ-to-XML là gì?
- 15. Tương đương với Math.abs() trong Mục tiêu-C là gì?
- 16. Clojure tương đương với Overriding "bằng" trong java là gì?
- 17. tương đương với = ~ của ruby trong php là gì?
- 18. Tương đương với System.nanoTime() trong .NET là gì?
- 19. tương đương .NET của @Deprecated trong java là gì?
- 20. Tương đương với REGEXP_SUBSTR trong mysql là gì?
- 21. Tương đương với việc truyền DefaultCredentials trong WCF là gì?
- 22. FindElementsInHostCoordinates tương đương của Silverlight trong WPF là gì?
- 23. Tương đương với HttpServiceHost trong ASP.NET WebAPI là gì?
- 24. Tương đương với SecureString trong WinRT là gì?
- 25. Tương đương với LinkedHashSet (Java) trong C# là gì?
- 26. Tương đương với "none" trong các mẫu django là gì?
- 27. tương đương C# tĩnh của {...} trong Java là gì?
- 28. Tương đương với JPA trong .NET là gì?
- 29. Tương đương với bigint trong C# là gì?
- 30. Tương đương với mới/xóa C++ trong C là gì?
Tôi hiện đã thêm yêu cầu tính năng để bao gồm điều này trong ZonedDateTime trực tiếp: https://code.google.com/p/noda-time/issues/detail?id=264 –