我想知道是否通过了当天的指定时间。我真的不喜欢我的方式:
private static readonly TimeSpan _whenTimeIsOver = new TimeSpan(16,25,00);
internal static bool IsTimeOver()
{
return DateTime.Now.TimeOfDay.Subtract(_whenTimeIsOver ).Ticks > 0;
}
你好吗?
答案 0 :(得分:24)
怎么样:
internal static bool IsTimeOver()
{
return DateTime.Now.TimeOfDay > _whenTimeIsOver;
}
运算符重载对于日期和时间工作非常有用:)您可能还想考虑将其设置为属性而不是方法。
很遗憾没有
DateTime.CurrentTime
或
TimeSpan.CurrentTime
要避免DateTime.Now.TimeOfDay
(就像DateTime.Today
一样),但唉,不......
我在MiscUtil的int
上有一组扩展方法可以使_whenTimeIsOver
初始化整齐 - 您可以使用:
private static readonly TimeSpan _whenTimeIsOver = 16.Hours() + 25.Minutes();
这不是每个人的口味,但我喜欢它......
答案 1 :(得分:14)
if (DateTime.Now.TimeOfDay > _whenTimeIsOver)
....