如何检查DateTime字段是否为空或空?
我是C#的新手,我有一个疑问。
在我正在工作的应用程序中,我在代码中找到了类似的东西:
if (!String.IsNullOrEmpty(u.nome))
此代码只是检查u对象的nome字段是否不是空的\ null字符串。
好的,这对我来说非常清楚,但是如果字段不是字符串但是DateTime对象,我该怎么做呢?
如果声明DateTime,则默认值为DateTime.MinValue,因此您必须像这样检查它:
DateTime dat = new DateTime(); if (dat==DateTime.MinValue) { //unassigned }
如果DateTime可以为空,那么这是一个不同的故事:
DateTime? dat = null; if (!dat.HasValue) { //unassigned }
DateTime
不是标准的可空类型。 如果要为DateTime
类型的变量赋值null,则必须使用DateTime?
支持null值的类型。
如果您只想测试要设置的变量(例如变量保持非默认值),您可以使用关键字“default”,如下面的代码:
if (dateTimeVariable == default(DateTime)) { //do work for dateTimeVariable == null situation }