我正在迭代不同的数据集,每一个都是另一天。
如何确定特定TimeZone的日光变化当天给定的DateTime?
最后一部分很重要:Iam在另一个本地时区,需要找出这个更改何时出现在另一个TimeZone上!
我发现了如何通过TimeZoneInfo.AdjustmentRule获取Delta,Start和End。但对于例如Lissabon时间没有关于02:00到01:00的变化的信息。
/ edit:刚刚发现adjustRule中有某种信息,但它不像常规日期那样容易访问。
是否有帮助方法计算给定年份的确切日期?
public DaylightTime GetDaylightTimeForTimeZone(TimeZoneInfo tzi)
{
var adj_rules = tzi.GetAdjustmentRules();
var daylighttime = new DaylightTime(
adj_rules[0].DateStart, adj_rules[0].DateEnd, adj_rules[0].DaylightDelta);
return daylighttime; /* Only part of the solution
since it does not deliver the actual date when it happens */
}