Dela via


FindSystemTimeZoneById returnerar inte nytt objekt

Objektet TimeZoneInfo som returneras av FindSystemTimeZoneById(String) är nu en cachelagrad TimeZoneInfo instans i stället för ett nytt objekt.

Tidigare beteende

TimeZoneInfo.FindSystemTimeZoneById(String) returnerade ett nytt TimeZoneInfo objekt.

Nytt beteende

Från och med .NET 8 TimeZoneInfo.FindSystemTimeZoneById(String) returnerar en cachelagrad TimeZoneInfo instans.

Version introducerad

.NET 8

Typ av icke-bakåtkompatibel ändring

Den här ändringen är en beteendeförändring.

Orsak till ändringen

Den här ändringen gjordes för att förbättra prestandan när du anropade FindSystemTimeZoneById(String). Mer information finns i dotnet/runtime pull request #85615.

Om koden förlitade sig på FindSystemTimeZoneById(String) att skapa en ny instans av TimeZoneInfoomstrukturerar du koden för att anropa någon av dessa metoder i stället.

Berörda API:er