使用时间跨度比较两个时间间隔

时间:2013-02-22 10:49:25

标签: c# datetime time

我想在某个时间和当前时间之间进行比较,以检查它是否超过了给定的时间段。

我想我应该使用TimeSpan,但我不确定如何。我比较的两个日期是DateTime对象。

 TimeSpan ts = TimeSpan.FromSeconds(_timeInterval);

 if(DateTime.UtcNow.Ticks - rex.LastFired.Ticks > ts.Ticks)
    // bla bla

3 个答案:

答案 0 :(得分:3)

只需比较您的日期与时间跨度之间的差异。

var start = new DateTime(2013, 02, 15);
var now = DateTime.Now;

var oneWeek = new TimeSpan(7, 0, 0, 0);

if (now - start > oneWeek) {
    Console.Write("One week is passed since start date.");
} else {
    Console.Write("One week not yet passed since start date.");
}

答案 1 :(得分:2)

if(DateTime.UtcNow - rex.LastFired > ts)
     ...

答案 2 :(得分:1)

为什么不使用DateTime.Compare?

http://msdn.microsoft.com/en-us/library/system.datetime.compare.aspx

编辑:你首先必须使用TimeSpan.Substract或DateTime.Substract,然后你可以使用适当的.Compare方法。