MaxValue Field
Collapse the table of content
Expand the table of content

DateTime.MaxValue Field

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

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

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

'Declaration
Public Shared ReadOnly MaxValue As DateTime

ExceptionCondition
ArgumentOutOfRangeException

DateTime.MaxValue is outside the range of the current culture's default calendar or of a specified culture's default calendar.

The value of this constant is equivalent to 23:59:59.9999999, December 31, 9999, exactly one 100-nanosecond tick before 00:00:00, January 1, 10000.

Some calendars, such as the UmAlQuraCalendar, support an upper date range that is earlier than MaxValue. In these cases, trying to access MaxValue in variable assignments or formatting and parsing operations can throw an ArgumentOutOfRangeException. Rather than retrieving the value of DateTime.MaxValue, you can retrieve the value of the specified culture's latest valid date value from the System.Globalization.CultureInfo.DateTimeFormat.Calendar.MaxSupportedDateTime property.

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.
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
   outputBlock.Text += String.Format("{0:N0} is less than {1:N0} ticks.", _
                                     numberOfTicks, _
                                     Date.MinValue.Ticks)
Else
   outputBlock.Text += String.Format("{0:N0} is greater than {1:N0} ticks.", _
                                     numberOfTicks, _
                                     Date.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.      


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2017 Microsoft