2011-07-22 41 views

回答

6
var d1 = new DateTime(year1, month1, day1); 
var d2 = new DateTime(year2, month2, day2); 
TimeSpan t = d2 - d1; 
var elapsedDays = t.Days; 
4

试试这个:

TimeSpan difference = endTime.Subtract(startTime); 
int numDays = difference.Days; 
1

减去另一个DateTime(或DateTimeOffset)将导致TimeSpanTimeSpan结构有一个TotalDays属性,它应该会给你你想要的。

Here's指向TimeSpan的MSDN页面的链接。

1
(new DateTime(endYear, endMonth, endDay) - new DateTime(startYear, startMonth, startDay)).TotalDays 
1
DateTime checkin //set to checkin date 
DateTime checkout //set to checkout date 
TimeSpan ts = checkout.Subtract(checkin); 
int dayDifference = ts.TotalDays; //this is your days 
+1

.Days会给你3中的情况下,总时间跨度为34天。 –

+0

啊,谢谢。固定。 –