DateTime.MaxValue Mező
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
A legnagyobb lehetséges értéket DateTimejelöli. Ez a mező csak olvasható.
public: static initonly DateTime MaxValue;
public static readonly DateTime MaxValue;
staticval mutable MaxValue : DateTime
Public Shared ReadOnly MaxValue As DateTime
Mező értéke
Példák
Az alábbi példa egy DateTime objektum példányosításához adja át a konstruktorának egy Int64 olyan értéket, amely több osztásjelet jelöl. A konstruktor meghívása előtt a példa biztosítja, hogy ez az érték nagyobb vagy egyenlő legyen, DateTime.MinValue.Ticks mint DateTime.MaxValue.Ticksaz . Ha nem, akkor dob egy 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.
Megjegyzések
Ennek az állandónak az értéke 23:59:59.9999999 UTC, 9999. december 31. a Gergely-naptárban, pontosan egy 100 nanoszekundumos pipa 00:00:00 UTC, 10000. január 1. előtt.
Egyes naptárak, például a ThaiBuddhistCalendarfelső dátumtartományok támogatják a korábbi dátumtartományt MaxValue. Ezekben az esetekben a változó-hozzárendelésekben vagy formázási és elemzési műveletekben való hozzáférés MaxValue megkísérlése dobhat egy ArgumentOutOfRangeException. Az érték beolvasása DateTime.MaxValuehelyett lekérheti a megadott kultúra legújabb érvényes dátumértékének értékét a Calendar.MaxSupportedDateTime tulajdonságból.