DateTime.MinValue VS新的DateTime()在C# [英] DateTime.MinValue vs new DateTime() in C#
问题描述
当越来越SQL日期时间ReSharper的建议使用新的DateTime()
当值 DBNull.Value
。我一直使用 DateTime.MinValue
。这是正确的方法是什么?
的DateTime VARDATA = sqlQueryResult [数据]是的DateTime? (DATETIME)sqlQueryResult [数据]:新的DateTime(); // MSDN:
从的 DateTime.MinValue 的文档:
MINVALUE定义被分配到一个未初始化的日期时间可变的日期和时间。
因此,得到的日期将是相同的。由于的DateTime
是值类型,这两个选项应该是等价的。就个人而言,我更喜欢写 DateTime.MinValue
,因为它是自我记录
PS:你可能想考虑使用可空类型(的DateTime?
),如果你的数据可以包含(有意义)空值。
When getting SQL DateTime Resharper suggests to use new DateTime()
when value is DBNull.Value
. I've always used DateTime.MinValue
. Which is the proper way?
DateTime varData = sqlQueryResult["Data"] is DateTime ? (DateTime) sqlQueryResult["Data"] : new DateTime();
From the documentation of DateTime.MinValue:
MinValue defines the date and time that is assigned to an uninitialized DateTime variable.
Thus, the resulting date will be the same. Since DateTime
is a value type, both options should be equivalent. Personally, I prefer to write DateTime.MinValue
, since it's self-documenting.
PS: You might want to consider using nullable types (DateTime?
), if your data can contain (meaningful) null values.
这篇关于DateTime.MinValue VS新的DateTime()在C#的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!