FindSystemTimeZoneById 不返回新对象

TimeZoneInfo返回FindSystemTimeZoneById(String)的对象现在是缓存TimeZoneInfo实例,而不是新对象。

以前的行为

TimeZoneInfo.FindSystemTimeZoneById(String) 返回一个新 TimeZoneInfo 对象。

新行为

从 .NET 8 开始, TimeZoneInfo.FindSystemTimeZoneById(String) 返回缓存 TimeZoneInfo 实例。

已引入的版本

.NET 8

破坏性变更的类型

此更改为行为更改

更改原因

此更改是在调用 FindSystemTimeZoneById(String)时改进性能的。 有关详细信息,请参阅 dotnet/runtime 拉取请求 #85615

如果代码依赖于 FindSystemTimeZoneById(String) 创建一个新实例 TimeZoneInfo,请重构代码以改为调用 其中一种方法

受影响的 API