DateTime.MaxValue Champ
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente la plus grande valeur possible de DateTime. Ce champ est en lecture seule.
public: static initonly DateTime MaxValue;
public static readonly DateTime MaxValue;
staticval mutable MaxValue : DateTime
Public Shared ReadOnly MaxValue As DateTime
Valeur de champ
Exemples
L’exemple suivant instancie un DateTime objet en passant à son constructeur une Int64 valeur qui représente un certain nombre de cycles. Avant d’appeler le constructeur, l’exemple garantit que cette valeur est supérieure ou égale à DateTime.MinValue.Ticks
et inférieure ou égale à DateTime.MaxValue.Ticks
. Si ce n’est pas le cas, elle lève un 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.
Remarques
La valeur de cette constante est équivalente à 23:59:59.9999999 UTC, 31 décembre 9999 dans le calendrier grégorien, exactement une graduation de 100 nanosecondes avant 00:00:00 UTC, 1er janvier 10000.
Certains calendriers, tels que , ThaiBuddhistCalendarprennent en charge une plage de dates supérieure antérieure à MaxValue. Dans ce cas, une tentative d’accès MaxValue dans des affectations de variables ou des opérations de mise en forme et d’analyse peut lever un ArgumentOutOfRangeException. Au lieu de récupérer la valeur de DateTime.MaxValue, vous pouvez récupérer la valeur de la dernière valeur de date valide de la culture spécifiée à partir de la Calendar.MaxSupportedDateTime propriété .