Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
868 of 1492 menu
◀ ▶

Свойство DateTimeOffset.UtcDateTime

Свойство UtcDateTime переводит часы в UTC, в отличие от DateTime, где циферблат не меняется. Местный вид - LocalDateTime.

Синтаксис

DateTime utc = dateTimeOffset.UtcDateTime;

Пример

Давайте переведём 3:04:05 со смещением +3 в UTC:

using System; class Program { static void Main() { var dto = new DateTimeOffset( 2020, 1, 2, 3, 4, 5, TimeSpan.FromHours(3)); DateTime utc = dto.UtcDateTime; Console.WriteLine(utc.Hour); Console.WriteLine(utc.Minute); Console.WriteLine(utc.Kind == DateTimeKind.Utc); } }

Результат выполнения кода:

0 4 True

Пример

Давайте сравнить UtcDateTime до и после ToOffset:

using System; class Program { static void Main() { var dto = new DateTimeOffset( 2020, 1, 2, 3, 4, 5, TimeSpan.FromHours(3)); DateTime before = dto.UtcDateTime; DateTimeOffset shifted = dto.ToOffset(TimeSpan.Zero); bool res = before == shifted.UtcDateTime; Console.WriteLine(res); } }

Результат выполнения кода:

True

Пример

Давайте убедиться, что исходный DateTime всё ещё показывает 3 часа:

using System; class Program { static void Main() { var dto = new DateTimeOffset( 2020, 1, 2, 3, 4, 5, TimeSpan.FromHours(3)); dto.UtcDateTime.ToString(); Console.WriteLine(dto.DateTime.Hour); } }

Результат выполнения кода:

3

Смотрите также

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить