Un DateTime peut-il être null? [dupliquer]
Double Possible:
DateTime valeur "null
Est-il possible de définir l'objet datetime sur null?
6 réponses
DateTime
est un valeur de type, qui, tout comme int
et double
, n'a pas de sens null
valeur.
Dans VB.NET, vous pouvez écrire ceci:
Dim d As DateTime = Nothing
Mais tout cela fait est de définir d
à la valeur par défaut DateTime
Valeur. En C# le code équivalent serait le suivant:
DateTime d = default(DateTime);
...ce qui équivaut à DateTime.MinValue
.
Cela dit, il y a le Nullable<T>
type, qui est utilisé pour fournir une valeur null
pour tout type de valeur T
. Le raccourci pour Nullable<DateTime>
en C# est DateTime?
.
Non, vous ne pouvez pas pour DateTime
est un type valeur.
Vous voudrez peut-être consulter Nullable<DateTime>
bien que (ou DateTime? en bref)
Non, c'est une structure pas une classe. Soit en faire un type nullable, par exemple System.DateTime? myValue; ou utilisez le système.DateTime.MinValue comme sentinelle.
Non -- DateTime est une structure en C# et les structures (types de valeur) ne peuvent pas être null.
Vous pouvez, cependant, utiliser Nullable<DateTime>.
Normalement DateTime ne peut pas être null, car est un Type de valeur, mais en utilisant l'opérateur nullable introduit en C# 2, vous pouvez accomplir ceci