.NET Framework Class Library
DateTime..::.MinValue Field

Updated: July 2008

Represents the smallest possible value of DateTime. This field is read-only.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
Syntax

Visual Basic (Declaration)
Public Shared ReadOnly MinValue As DateTime
Visual Basic (Usage)
Dim value As DateTime

value = DateTime.MinValue
C#
public static readonly DateTime MinValue
Visual C++
public:
static initonly DateTime MinValue
JScript
public static final var MinValue : DateTime
Remarks

The value of this constant is equivalent to 00:00:00.0000000, January 1, 0001.

MinValue defines the date and time that is assigned to an uninitialized DateTime variable. The following example illustrates this.

Visual Basic
' Define an unitialized date.
Dim date1 As Date
Console.Write(date1.ToString())
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)
C#
// Define an unitialized date.
DateTime date1 = new DateTime();
Console.Write(date1.ToString());
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)

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.

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.MinValue.Ticks. If not, it throws an ArgumentOutOfRangeException.

Visual Basic
' 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
   Throw New ArgumentOutOfRangeException("ticks", _
                   String.Format("{0} is less than {1} ticks.", _
                   numberOfTicks, _
                   Date.MinValue.Ticks))
Else                                                   
   Throw New ArgumentOutOfRangeException("ticks", _
                   String.Format("{0} is greater than {1} ticks.", _
                   numberOfTicks, _
                   Date.MaxValue.Ticks))
C#
// 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)
   throw new ArgumentOutOfRangeException("ticks", 
                   String.Format("{0} is less than {1} ticks.", 
                   numberOfTicks, 
                   DateTime.MinValue.Ticks));
else                                                   
   throw new ArgumentOutOfRangeException("ticks", 
                   String.Format("{0} is greater than {1} ticks.", 
                   numberOfTicks, 
                   DateTime.MaxValue.Ticks));
Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0
See Also

Reference

Change History

Date

History

Reason

July 2008

Added an example.

Information enhancement.

Tags :


Page view tracker