public static DateTimeOffset ToDateTimeOffset(OffsetDateTime offsetDateTime) { if (offsetDateTime.Equals(MinOffsetDateTime)) { return(DateTimeOffset.MinValue); } if (offsetDateTime.Equals(MaxOffsetDateTime)) { return(DateTimeOffset.MaxValue); } if ((offsetDateTime.LocalDateTime <= MinDateTimeLocalDateTime) || (offsetDateTime.LocalDateTime >= MaxDateTimeLocalDateTime)) { throw new ArgumentOutOfRangeException(nameof(offsetDateTime), "Time not within allowable range, MinValue, or MaxValue"); } return(offsetDateTime.ToDateTimeOffset()); }