夏令时更改会影响UTC转换

Mal*_*har 9 .net c#

基本上我将存储在数据库中的本地日期转换为UTC.但是我已经在某处读到了2007年日光节约规则发生了变化.所以Date.ToUniversalTime()函数仍能正常工作.基本上2007年之前的日期(新规则生效时)将正确转换,但之后的日期不会.我在这儿吗?或者.Net会在内部处理转换,即根据不同的夏令时规则?

编辑:日期作为本地时间存储在DB中.我正在将其转换为UTC.所以应该使用2005年的日光规则而不是今天的规则来转换诸如"2005年3月9日"之类的日期.2007年美国的规则发生了变化.所以日期错误一小时.

Jon*_*eet 3

这取决于您使用的 .NET 版本以及可能使用的 Windows 版本。.NET 3.5 有TimeZoneInfo类,其中包括历史更改等 - 不幸的是,在此之前,支持更加不完整。