.Net DateTime.Subtract问题

时间:2010-07-22 14:04:32

标签: c# .net datetime

我有一个函数可以返回2个DateTime之间的差异,以秒为单位。但是,在某些情况下,它不能正常工作,我不知道为什么。

即:

Debug.WriteLine(DateTime.Parse("7/22/2010 9:52:39 AM").Subtract(DateTime.Parse("7/22/2010 8:58:38 AM")).Seconds, "WTF");

以上代码返回1 ...显然上述日期之间的差异超过1秒。

4 个答案:

答案 0 :(得分:16)

使用TimeSpan.TotalSeconds属性代替.Seconds

Debug.WriteLine(DateTime.Parse("7/22/2010 9:52:39 AM").Subtract(DateTime.Parse("7/22/2010 8:58:38 AM")).TotalSeconds, "WTF");

答案 1 :(得分:3)

你需要获得TotalSeconds,而不仅仅是秒;差异是54分钟,1秒;

答案 2 :(得分:1)

我认为你应该使用.TotalSeconds属性。这两个日期的差异只是一秒 +加上几分钟等等。

答案 3 :(得分:0)

您正在打印只是秒部分。试试这个

Debug.WriteLine(DateTime.Parse("7/22/2010 9:52:39 AM").Subtract(DateTime.Parse("7/22/2010 8:58:38 AM")), "WTF"); 

// Prints 00:54:01