DateTime.MinValue Field
Definition
Represents the smallest possible value of DateTime. This field is read-only.
public: static initonly DateTime MinValue;
public static readonly DateTime MinValue;
staticval mutable MinValue : DateTime
Public Shared ReadOnly MinValue As DateTime
Field Value
Examples
The following example instantiates a DateTime object by passing its constructor an Int64 value that represents a number of ticks. Before invoking the constructor, the example ensures that this value is greater than or equal to DateTime.MinValue.Ticks
and less than or equal to DateTime.MaxValue.Ticks
. If not, it throws an 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.
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.
Remarks
The value of this constant is equivalent to 00:00:00.0000000 UTC, January 1, 0001, in the Gregorian calendar.
MinValue defines the date and time that is assigned to an uninitialized DateTime variable. The following example illustrates this.
// 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.
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)
The MinValue and MaxValue properties can be used to ensure that a value lies within the supported range before passing it to a DateTime constructor. The code in the Example section illustrates this usage.