datetime 空值显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了datetime 空值显示相关的知识,希望对你有一定的参考价值。
我从数据库中读取一个时间在templateFiled 显示!而数据库中的这个字段是dateTime型的!但是是可以为空的!我出数据库中的读出来,有数据的都正常显示!,但是为空的就默认显示为0001-01-01,我想把这个时间隐藏,不显示!怎么做
设置该字段为null,并且检查的时候用IS NULL来做判断 参考技术A Nullable<DateTime> DateTimeIsNull=null你这个DateTimeIsNull为空,那它哪来的值?
另外,站长团上有产品团购,便宜有保证 参考技术B Nullable
DateTime.hasvalue vs datetime == null,哪个更好以及为啥[重复]
【中文标题】DateTime.hasvalue vs datetime == null,哪个更好以及为啥[重复]【英文标题】:DateTime.hasvalue vs datetime == null, which one is better and why [duplicate]DateTime.hasvalue vs datetime == null,哪个更好以及为什么[重复] 【发布时间】:2016-10-29 16:22:17 【问题描述】:我想问一个关于控制日期时间的空值的问题。
if (mydatetime != null)
或
if(mydatetime.hasvalue)
哪个更好,哪个更合适,为什么?
谢谢。
【问题讨论】:
它们并不完全相同。HasValue
仅当 var 为 Nullable 时才有效
第一个如果有值则为真,第二个如果没有值则为真。 !
可能太多了。
我的是可以为空的datetime(datetime?my datetime=null),这种情况下有什么区别吗?
@Aurora 没有区别,保持一致
【参考方案1】:
与!=null
的第一个比较是有效的比较,而第二个只能在变量声明为Nullable 时使用,或者换句话说,与.HasValue
的比较只能在DateTime 变量声明为时使用可以为空
例如:
DateTime dateInput;
// Will set the value dynamically
if (dateInput != null)
// Is a valid comparison
if (dateInput.HasValue)
// Is not a valid comparison this time
在哪里
DateTime? dateInput; // nullable declaration
// Will set the value dynamically
if (dateInput != null)
// Is a valid comparison
if (dateInput.HasValue)
// Is also valid comparison this time
【讨论】:
【参考方案2】:如果你问
if (mydatetime != null)
您正在检查变量是否已被实例化。
如果它实际上是没有实例化,下面的语句会给你
NullReferenceException
if(!mydatetime.hasvalue)
因为您试图访问 null
对象的属性
仅当您将DateTime
声明为Nullable
时,它才会显示相同的行为。
Nullable<DateTime> mydatetime = null;
Console.WriteLine(mydatetime.HasValue);
【讨论】:
以上是关于datetime 空值显示的主要内容,如果未能解决你的问题,请参考以下文章
DateTime.hasvalue vs datetime == null,哪个更好以及为啥[重复]
读取sqlite数据库时用SQLiteDataAdapter填充Datatable时遇到的问题。