减去两个日期

sd_*_*ula 34 c# datetime calendar timespan

我有两个日历,每个都从calendar.SelectedDate返回一个DateTime.

如何相互减去两个选定的日期,给我两次选择之间的天数?

有一个calendar.Subtract()但它需要TimeSpan而不是DateTime.

C.E*_*uis 45

你可以使用someDateTime.Subtract(otherDateTime),这会返回TimeSpan一个TotalDays属性.


Jon*_*eet 30

只需使用:

TimeSpan difference = end - start;
double days = difference.TotalDays;
Run Code Online (Sandbox Code Playgroud)

请注意,如果您想将它们视为日期,则应该使用它们

TimeSpan difference = end.Date - start.Date;
int days = (int) difference.TotalDays;
Run Code Online (Sandbox Code Playgroud)

这样,根据时间的不同,你不会得到不同的结果.

(如果需要,您可以使用该Subtract方法而不是-运算符,但我个人觉得使用运算符更清楚.)

  • 这是一个大胆的人纠正SkeetCode(tm).好工作Bhushan. (17认同)