Can a DateTime be null?
Solution 1
DateTime
is a value type, which, just like int
and double
, has no meaningful null
value.
In VB.NET, you can write this:
Dim d As DateTime = Nothing
But all this does is to set d
to the default DateTime
value. In C# the equivalent code would be this:
DateTime d = default(DateTime);
...which is equivalent to DateTime.MinValue
.
That said, there is the Nullable<T>
type, which is used to provide a null
value for any value type T
. The shorthand for Nullable<DateTime>
in C# is DateTime?
.
Solution 2
No -- DateTime is a struct in C# and structs (value types) can not be null.
You can, however, use Nullable<DateTime>.
Solution 3
DateTime? myDate = null;
The question mark will give you a nullable type. The one that can either be set to its native value or to null.
DateTime
itself is a value type. It cannot be null.
Solution 4
Nope, you cannot for DateTime
is a value type.
You might want to look at Nullable<DateTime>
though (or DateTime? in short)
Solution 5
Normally DateTime cannot be null, since is a Value Type, but using the nullable operator introduced in C# 2, you can accomplish this
Related videos on Youtube
r.r
Updated on July 09, 2022Comments
-
r.r almost 2 years
Possible Duplicate:
DateTime “null” valueis it possible to set datetime object to null?
-
Justin Niessner over 13 yearsBe careful with your wording. Nullable<T> is a structure too and can contain a null.