SALES: 1-800-867-1380
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

DateTime.MaxValue Field

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

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

public static readonly DateTime MaxValue

The value of this constant is equivalent to 23:59:59.9999999 UTC, December 31, 9999 in the Gregorian calendar, exactly one 100-nanosecond tick before 00:00:00 UTC, 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. 
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.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft