2009-06-23 13 views
39

Per ottenere TimeSpan in minuti da dati due date che sto facendo quanto segueCome posso ottenere TimeSpan in minuti con due date?

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; 

C'è un modo migliore?

risposta

120
TimeSpan span = end-start; 
double totalMinutes = span.TotalMinutes; 
5

Vedi TimeSpan.TotalMinutes:

ottiene il valore della struttura TimeSpan corrente espressa in tutto e minuti frazionari.

7

lo farei in questo modo:

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

Davvero vecchio ma 'cast' troncherà. Usa 'Convert.ToInt32' per ottenere l'arrotondamento corretto. – Asken

10

Perché non farlo in questo modo?

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

Spero che questo aiuti.

4
double totalMinutes = (end-start).TotalMinutes; 
Problemi correlati