Пример #1
0
        public void ToDateTimeOffset_Should_Convert_DateTimeTimeZone_To_DateTimeOffset()
        {
            DateTimeTimeZone dateTimeTimeZone = new DateTimeTimeZone
            {
                TimeZone = "UTC",
                DateTime = "2019-01-25T06:37:39.8058788Z"
            };

            DateTime     dateTime     = DateTime.ParseExact(dateTimeTimeZone.DateTime, DateTimeFormat, CultureInfo.InvariantCulture);
            TimeZoneInfo timeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById(dateTimeTimeZone.TimeZone);
            TimeSpan     offset       = timeZoneInfo.GetUtcOffset(dateTime);

            dateTime = DateTime.SpecifyKind(dateTime, DateTimeKind.Utc);

            var expectedDateTimeOffset = new DateTimeOffset(dateTime, offset);
            var actualDateTimeOffset   = dateTimeTimeZone.ToDateTimeOffset();

            Assert.Equal(expectedDateTimeOffset, actualDateTimeOffset);
        }
Пример #2
0
 public static string ToLocalTime(DateTimeTimeZone value)
 {
     // Workaround for https://github.com/microsoft/microsoft-ui-xaml/issues/2407
     return(value.ToDateTimeOffset().LocalDateTime.ToString("g"));
 }