Нет, я не верю, что есть способ сделать это. Это не так, как часовой пояс установлен на основе потока, как культура. Например, я считаю, что DateTime.ToLocalTime будет всегда использовать часовой пояс системы
Однако я бы не стал использовать TimeZoneInfo.ConvertTimeBySystemTimeZoneId
везде. Я бы выставил свойство типа TimeZoneInfo
, которое представляло соответствующий часовой пояс, или установил бы вспомогательный класс для преобразования туда, куда вам нужно.
В зависимости от вашего приложения вы можете обнаружить, что если вы выбираете правильные точки для преобразования данных (а - это не , то всегда бывает просто хранить их в UTC везде, кроме пользовательского интерфейса). слой) вам не нужно выполнять столько конверсий, сколько вы ожидаете.