Значение DateTime не имеет данных смещения TZ . Он имеет флаг для «локальный» или «UTC» (или не указан). Смотрите свойство DateTime.Kind. Внутри фактическое значение DateTime является смещением от UT C, сохраняемым независимо от вида.
Если (не-0) TZ равен , отображается когда DateTime преобразуется в строку, DateTime представляет локальное смещение TZ и местное время TZ .
Это смещение TZ рассчитывается по - на лету в зависимости от фактического значения DateTime и текущих настроек компьютера (действительно потока) Например, он будет изменять смещения «автоматически» в зависимости от того, указана ли дата в стандартном или летнем времени. * Поскольку расчет выполняется с ограниченными данными (отметки от UT C и флажок), TZ не обязательно является «честным» во всех отношениях. Сдвиг TZ: правильное абсолютное время в UT C, но текущее смещение TZ может измениться, так как оно рассчитывается для текущих активных настроек .
* Исторические смещения могут быть неточными, если эти правила менялись несколько раз, так как реализации обычно хранят столько истории.