DateTime.MaxValue Campo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta il valore massimo possibile di DateTime. Questo campo è di sola lettura.
public: static initonly DateTime MaxValue;
public static readonly DateTime MaxValue;
staticval mutable MaxValue : DateTime
Public Shared ReadOnly MaxValue As DateTime
Valore del campo
Esempio
Nell'esempio seguente viene creata un'istanza di un DateTime oggetto passando il relativo costruttore un Int64 valore che rappresenta un numero di tick. Prima di richiamare il costruttore, l'esempio garantisce che questo valore sia maggiore o uguale a e minore o uguale a DateTime.MinValue.Ticks
DateTime.MaxValue.Ticks
. In caso contrario, genera un ArgumentOutOfRangeExceptionoggetto .
// 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.
Commenti
Il valore di questa costante equivale a 23:59:59.9999999 UTC, 31 dicembre 9999 nel calendario gregoriano, esattamente uno 100-nanosecondo prima delle 00:00:00 UTC, 1 gennaio 10000.
Alcuni calendari, ad esempio , ThaiBuddhistCalendarsupportano un intervallo di date superiore precedente a MaxValue. In questi casi, il tentativo di accedere MaxValue alle assegnazioni di variabili o alle operazioni di formattazione e analisi può generare un ArgumentOutOfRangeExceptionoggetto . Anziché recuperare il valore di DateTime.MaxValue, è possibile recuperare il valore del valore della data valida più recente della cultura specificata dalla Calendar.MaxSupportedDateTime proprietà .