我发现这个问题已经在Java、JavaScript和PHP中得到了解答,但c#中没有。那么,如何在c#中计算两个日期之间的天数呢?


当前回答

得到两个日期之间的差值,然后从下面得到日期:

int total_days = (EndDate - StartDate).TotalDays

其他回答

DateTime xmas = new DateTime(2009, 12, 25);
double daysUntilChristmas = xmas.Subtract(DateTime.Today).TotalDays;

我认为这会达到你的目的:

DateTime d1 = DateTime.Now;
DateTime d2 = DateTime.Now.AddDays(-1);

TimeSpan t = d1 - d2;
double NrOfDays = t.TotalDays;

使用TimeSpan对象,它是date减法的结果:

DateTime d1;
DateTime d2;
return (d1 - d2).TotalDays;

上面的答案是正确的,但是如果你只想把整天作为整数,并且愿意放弃约会的时间部分,那么可以考虑:

(EndDate.Date - StartDate.Date).Days

同样假设StartDate和EndDate是DateTime类型。

得到两个日期之间的差值,然后从下面得到日期:

int total_days = (EndDate - StartDate).TotalDays