There's an undocumented way to achieve this, as seen here in the .NET reference source.
TimeZoneInfo.ConvertTime(new DateTime(0), TimeZoneInfo.Utc);
This will clear the time zone cache, and it works in WinRT as well as traditional .NET Framework (4.6+), .NET Core, and PCL.
According to my colleagues at Microsoft on the .NET team, this is an unofficial workaround to a known problem. It is not expected to be removed, but it is an implementation detail and not part of the public API, so use at your own risk.
Note that TimeZoneInfo.ClearCachedData
should be used instead of this approach, when it is available. It was added to .NET Standard 2.0, and UWP 10.1 (see all environments here).
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…