Несоответствие часового пояса Казахстана в Linux и WindowsC#

Место общения программистов C#
Ответить
Anonymous
 Несоответствие часового пояса Казахстана в Linux и Windows

Сообщение Anonymous »

Казахстан перешел на единый часовой пояс 1 марта 2024 года. Я также нашел об этом Центр обновления Майкрософт.
В приложении .NET8 WebApi у меня есть этот метод:

Код: Выделить всё

private static string ProcessTimeZone(string timeZoneId)
{
var timeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId);
var result = $"TimeZoneId = {timeZoneId}; DisplayName = {timeZoneInfo.DisplayName}; BaseUtcOffset = {timeZoneInfo.BaseUtcOffset}";
Console.WriteLine(result);

return result;
}
При запуске в Linux Docker-контейнере результат для часового пояса Азии/Алматы:

Код: Выделить всё

"TimeZoneId = Asia/Almaty; DisplayName = (UTC+05:00) East Kazakhstan Time (Almaty); BaseUtcOffset = 05:00:00"
но при локальной работе в Windows 11 Pro со всеми установленными последними обновлениями (версия 25H2, сборка ОС 26200.7623), результат следующий:

Код: Выделить всё

"TimeZoneId = Asia/Almaty; DisplayName = (UTC+06:00) Bishkek; BaseUtcOffset = 06:00:00"
Почему?

Подробнее здесь: https://stackoverflow.com/questions/798 ... nd-windows
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»