在我的C#代码中,我有一个DateTime?
变量。从数据库获取值时,它可以是null
,也可以有一些日期/时间值。
在前端,我不想获得默认值(01-01-1900 12:00:00 am)。什么是比较我的日期变量这个默认日期的最佳方法?
答案 0 :(得分:6)
您可以创建一个const:
static readonly DateTime DefaultDateTime = new DateTime(1900, 1, 1, 0, 0, 0);
然后以这种方式进行比较:
DateTime? myVariable = returnedFromDb == DefaultDateTime ? default(DateTime?) : returnedFromDb;
答案 1 :(得分:3)
你可以有一个扩展方法,如下所示:
public static class DateTimeExtensions
{
static DateTime SQL_DEFAULT = new DateTime(1900, 1, 1);
public static bool IsDefaultValue(this DateTime dateTime)
{
return dateTime == SQL_DEFAULT;
}
}
然后测试一下这个值:
var isDefault = myDate.IsDefaultValue();