DateTime.MinValue Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет минимально допустимое значение типа DateTime. Это поле доступно только для чтения.
public: static initonly DateTime MinValue;
public static readonly DateTime MinValue;
staticval mutable MinValue : DateTime
Public Shared ReadOnly MinValue As DateTime
Значение поля
Примеры
В следующем примере создается экземпляр объекта путем DateTime передачи его конструктору Int64 значения, представляющего несколько тактов. Перед вызовом конструктора в примере гарантируется, что это значение больше или равно DateTime.MinValue.Ticks
и меньше или равно DateTime.MaxValue.Ticks
. В противном случае создается исключение ArgumentOutOfRangeException.
// Attempt to assign an out-of-range value to a DateTime constructor.
long numberOfTicks = Int64.MaxValue;
DateTime validDate;
// Validate the value.
if (numberOfTicks >= DateTime.MinValue.Ticks &&
numberOfTicks <= DateTime.MaxValue.Ticks)
validDate = new DateTime(numberOfTicks);
else if (numberOfTicks < DateTime.MinValue.Ticks)
Console.WriteLine("{0:N0} is less than {1:N0} ticks.",
numberOfTicks,
DateTime.MinValue.Ticks);
else
Console.WriteLine("{0:N0} is greater than {1:N0} ticks.",
numberOfTicks,
DateTime.MaxValue.Ticks);
// The example displays the following output:
// 9,223,372,036,854,775,807 is greater than 3,155,378,975,999,999,999 ticks.
// Attempt to assign an out-of-range value to a DateTime constructor.
let numberOfTicks = Int64.MaxValue
// Validate the value.
if numberOfTicks >= DateTime.MinValue.Ticks &&
numberOfTicks <= DateTime.MaxValue.Ticks then
let validDate = DateTime numberOfTicks
()
elif numberOfTicks < DateTime.MinValue.Ticks then
printfn $"{numberOfTicks:N0} is less than {DateTime.MinValue.Ticks:N0} ticks."
else
printfn $"{numberOfTicks:N0} is greater than {DateTime.MaxValue.Ticks:N0} ticks."
// The example displays the following output:
// 9,223,372,036,854,775,807 is greater than 3,155,378,975,999,999,999 ticks.
' Attempt to assign an out-of-range value to a DateTime constructor.
Dim numberOfTicks As Long = Int64.MaxValue
Dim validDate As Date
' Validate the value.
If numberOfTicks >= Date.MinValue.Ticks And _
numberOfTicks <= Date.MaxValue.Ticks Then
validDate = New Date(numberOfTicks)
ElseIf numberOfTicks < Date.MinValue.Ticks Then
Console.WriteLine("{0:N0} is less than {1:N0} ticks.",
numberOfTicks,
DateTime.MinValue.Ticks)
Else
Console.WriteLine("{0:N0} is greater than {1:N0} ticks.",
numberOfTicks,
DateTime.MaxValue.Ticks)
End If
' The example displays the following output:
' 9,223,372,036,854,775,807 is greater than 3,155,378,975,999,999,999 ticks.
Комментарии
Значение этой константы эквивалентно 00:00:00.0000000 UTC 1 января 0001 г. в григорианском календаре.
MinValue определяет дату и время, назначенные неинициализированной DateTime переменной. Это показано в следующем примере.
// Define an uninitialized date.
DateTime date1 = new DateTime();
Console.Write(date1);
if (date1.Equals(DateTime.MinValue))
Console.WriteLine(" (Equals Date.MinValue)");
// The example displays the following output:
// 1/1/0001 12:00:00 AM (Equals Date.MinValue)
// Define an uninitialized date.
let date1 = DateTime()
printf $"{date1}"
if date1.Equals DateTime.MinValue then
printfn $" (Equals Date.MinValue)"
// The example displays the following output:
// 1/1/0001 12:00:00 AM (Equals Date.MinValue)
' Define an uninitialized date.
Dim date1 As Date
Console.Write(date1)
If date1.Equals(Date.MinValue) Then _
Console.WriteLine(" (Equals Date.MinValue)")
' The example displays the following output:
' 1/1/0001 12:00:00 AM (Equals Date.MinValue)
Свойства MinValue и MaxValue можно использовать, чтобы убедиться, что значение находится в поддерживаемом диапазоне, прежде чем передавать его конструктору DateTime . Код в разделе Пример иллюстрирует это использование.