C# 如果有两个日期,我如何以分钟为单位获得时间跨度?

C# 如果有两个日期,我如何以分钟为单位获得时间跨度?,c#,C#,要从给定的两个日期获得几分钟的时间跨度,我将执行以下操作 int totalMinutes = 0; TimeSpan outresult = end.Subtract(start); totalMinutes = totalMinutes + ((end.Subtract(start).Days) * 24 * 60) + ((end.Subtract(start).Hours) * 60) +(end.Subtract(start).Minutes); return totalMinutes

要从给定的两个日期获得几分钟的时间跨度,我将执行以下操作

int totalMinutes = 0;
TimeSpan outresult = end.Subtract(start);
totalMinutes = totalMinutes + ((end.Subtract(start).Days) * 24 * 60) + ((end.Subtract(start).Hours) * 60) +(end.Subtract(start).Minutes);
return totalMinutes;
有更好的方法吗?

参见:

获取当前TimeSpan结构的值,以整分钟和分数分钟表示


我会这样做:

int totalMinutes = (int)(end - start).TotalMinutes;

为什么不这样做呢

DateTime dt1 = new DateTime(2009, 6, 1);
DateTime dt2 = DateTime.Now;
double totalminutes = (dt2 - dt1).TotalMinutes;

希望这能有所帮助。

确实很旧,但
cast
会截断。使用
Convert.ToInt32
获得正确的舍入。
double totalMinutes = (end-start).TotalMinutes;
double totalMinutes = (end-start).TotalMinutes;