我正在创建一个从当月最后一天开始到下个月第一天结束的日期列表,全部以 UTC 表示。对于本月(2013 年 10 月),法国时区的用户的 UTC 开始日期CalendarMonthStartUTC
为 9/30 @ 10PM,UTC 结束日期CalendarMonthEndUTC
为 10/31 @ 11PM。
我有一个看起来像这样的循环:
DateTime StartTime = CalendarMonthStartUTC;
DateTime EndTime = new DateTime()
while (StartTime < CalendarMonthEndUTC)
{
EndTime = StartTime.AddHours(24);
... do something here
StartTime = StartTime.AddHours(24);
}
此循环在除 10 月外的所有月份都可以正常工作,因为夏令时更改会产生 OBO 错误,因为循环通过在每次迭代中添加 24 小时进行迭代。我想知道如何修改我的循环,以便无论夏令时如何都能正常工作。
感谢您的建议。