我需要测试 DateTime 是否在某个时间单位的开头,以用于各种单位。这是我现在正在使用的代码:
/// ignoring milliseconds all the way down
bool IsMinute(DateTime dt)
{
return dt.Second == 0;
}
bool IsHour(DateTime dt)
{
return dt.Second == 0 && dt.Minute == 0;
}
bool IsDay(DateTime dt)
{
return dt.Date == dt;
}
bool IsMonth(DateTime dt)
{
return dt.Date == dt && dt.Day == 1;
}
bool IsYear(DateTime dt)
{
return dt.Date == dt && dt.DayOfYear == 1;
}
有什么改进的想法吗?