DateTime.MaxValue Pole
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje největší možnou DateTimehodnotu . Toto pole je určeno pouze ke čtení.
public: static initonly DateTime MaxValue;
public static readonly DateTime MaxValue;
staticval mutable MaxValue : DateTime
Public Shared ReadOnly MaxValue As DateTime
Hodnota pole
Příklady
Následující příklad vytvoří DateTime instanci objektu předáním jeho konstruktoru Int64 hodnotu, která představuje počet záškrtů. Před vyvoláním konstruktoru příklad zajistí, že tato hodnota je větší nebo rovna DateTime.MinValue.Ticks a menší než nebo rovna DateTime.MaxValue.Ticks. Pokud ne, vyvolá to .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.
Poznámky
Hodnota této konstanty je ekvivalentní 23:59:59,999999 UTC, 31. prosince 99999 v gregoriánském kalendáři, přesně jedno 100-nanosekundové tick před 00:00:00 UTC, 1. ledna 10000.
Některé kalendáře, například ThaiBuddhistCalendar, podporují horní rozsah kalendářních dat, který je dřívější než MaxValue. V těchto případech se pokus o přístup k MaxValue proměnným přiřazení nebo formátování a parsování operací může vyvolat .ArgumentOutOfRangeException Místo načtení hodnoty DateTime.MaxValuelze z vlastnosti načíst hodnotu nejnovější platné hodnoty kalendářního data Calendar.MaxSupportedDateTime zadané jazykové verze.