如何检查当前时间不大于午夜?

How to check that current time is not larger than midnight?

我有一个方法可以检查当前时间是否大于 00(午夜)。 如果我返回 true,那么我会发送一封电子邮件,如果不是,那么我不会发送它。昨晚我收到了 40 封不应该发送的电子邮件。

我尝试了这两种尝试:

    TimeSpan max = new TimeSpan(00, 0, 0);
    TimeSpan now = DateTime.Now.TimeOfDay;

    if (now > max)
        return false;

    return true;

还有这个:

TimeSpan max = new TimeSpan(24, 0, 0);
TimeSpan now = DateTime.Now.TimeOfDay;
if (now> max)
    return false;

return true;

在第一种情况下,我知道现在总是大于最大值,而在第二种情况下,我得到现在总是小于最大值。

我希望我的方法 return 如果时间介于 07-24

其他情况我想return false.

我该怎么做?

如果你想在 7 到 24 小时之间,只需检查当前小时,忽略其余的日期和时间位

参见:https://dotnetfiddle.net/1LCvRP

public bool IsHourInRange() 
{
    var currentHour = DateTime.Now.Hour;
    return currentHour >= 7;
}