在我的 C# 代码中,我有一个DateTime?
变量。从数据库中获取值时,它可以是null
或可以具有一些日期/时间值。
在前端,我不想获得默认值(01-01-1900 12:00:00 am)。比较此默认日期的日期变量的最佳方法是什么?
您可以创建一个常量:
static readonly DateTime DefaultDateTime = new DateTime(1900, 1, 1, 0, 0, 0);
然后这样比较:
DateTime? myVariable = returnedFromDb == DefaultDateTime ? default(DateTime?) : returnedFromDb;
你可以有一个扩展方法,像这样:
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();