比较C#中的未来日期

Ice*_*ind 0 .net c# datetime

我知道这可能是一个非常简单的问题,但我正在尝试编写一个函数,如果将来通过的日期返回bool值为"true",如下所示:

bool IsFutureDate(System.DateTime refDate)
{
    if (refDate > DateTime.Now)  // This doesn't seem to work
        return true;
    return false;
}
Run Code Online (Sandbox Code Playgroud)

有谁告诉我谁写这样的功能实际上有效?

谢谢

Mon*_*ong 5

我唯一能想到的是,如果refDate ==今天你可能会得到未定义的行为.

DateTime.Now包括时间.如果refDate如果今天在3:00说,你在2:00运行它将返回true.如果你在4:00运行它将返回false.

将它与DateTime.Today相比较,这将只返回日期,防止影响它的时间.

除此之外它应该都很好..

  • 请注意,DateTime.Today的时间为上午12点(00:00).比较今天某个时间的日期与未来的日期相比.如果要检查日期部分是否在将来,可以使用:refDate.Date> DateTime.Today (2认同)