.net中的夏令时



我正在开发一个ASP.NET应用程序。

我想知道如何检查特定日期是否在澳大利亚的夏令时期间。

例如,我想检查12/12/2013 12:30PM是否在澳大利亚的夏令时。

您需要知道您正在谈论的特定时区。澳大利亚有5个主要时区,在TZDB中有13个离散条目。你可以在这里阅读更多。

对于转换,请使用TimeZoneInfo或"节点时间"。

您还应该阅读时区标签wiki。

如果你能更具体,并显示你所尝试的代码,我会用更详细的回复更新这个答案。

Jon Skeet的NodaTime库将Tzdb公开为DateTimeZoneProvider之一。
public void Test_NodaTime_IsDaylightSavingTime()
{
    var ts = new DateTime(1980, 4, 15, 12, 0, 0);
    var local = LocalDateTime.FromDateTime(ts);
    var zdt = Utils.TzEast.ResolveLocal(local, Utils.CustomResolver);
    Assert.IsFalse(zdt.IsDaylightSavingTime());
}

https://www.timehubzone.com/time/zones

相关内容

  • 没有找到相关文章

最新更新