DateTime可以为null吗?
可能重复:
DateTime“null”值
是否可以将datetime对象设置为null?
DateTime
是一个值类型 ,就像int
和double
,没有有意义的null
值。
在VB.NET中,您可以这样写:
Dim d As DateTime = Nothing
但所有这一切都是将d
设置为默认的 DateTime
值。 在C#中,等效代码是这样的:
DateTime d = default(DateTime);
…相当于DateTime.MinValue
。
也就是说,有Nullable
类型,用于为任何值类型T
提供null
值。 C#中Nullable
的简写是DateTime?
。
DateTime? myDate = null;
问号会给你一个可以为空的类型。 可以设置为其本机值或为null的那个。
DateTime
本身是一种值类型。 它不能为空。
不,你不能为DateTime
是一个值类型。
您可能希望查看Nullable
(或简称DateTime?)
否 – DateTime是C#中的结构,结构(值类型)不能为null。
但是,您可以使用Nullable
不,它的结构不是一个类。 要么使它成为可空类型,例如System.DateTime? myvalue的; 或使用System.DateTime.MinValue作为哨兵。
通常DateTime不能为null,因为它是一个Value Type,但是使用C#2中引入的可空运算符,你可以完成这个