2012-07-23 8 views

Respuesta

11
 DateTime a = ... 
     DateTime b = ... 
     var ms = a.Subtract(b).TotalMilliseconds; 
+0

se debe ser var ms = b.Subtract (a) .TotalMilliseconds; De lo contrario, correcto! ¡Gracias! Estaba usando la clase TimeSpan y no daba el valor correcto. – sarsnake

+1

Bueno, esto realmente usa la clase TimeSpan; el resultado de DateTime.Subtract() es un TimeSpan. – KeithS

6
(datetime2 - datetime1).TotalMilliseconds 
4

Estoy pensando que esto debería funcionar. Has solicitado que toda prueba, estoy asumiendo que usted no sabe cuál de los dos es el más adelante :)

Math.Abs((date1 - date2).TotalMilliseconds) 
+0

Técnicamente esto obtiene la distancia, no la diferencia. Aunque +1 porque siento que esto es lo más probable que el OP realmente quiere. – NominSim

0

Resta sería mi elección ...

DateTime earlier = DateTime.Now; 
// ... 
DateTime later = DateTime.Now; 
double result = (later - earlier).TotalMilliseconds; 
0
public static Int64 GetDifferencesBetweenTwoDate(DateTime newDate, DateTime oldDate, string type) 
    { 
     var span = newDate - oldDate; 
     switch (type) 
     { 
      case "tt": return (int)span.Ticks; 
      case "ms": return (int)span.TotalMilliseconds; 
      case "ss": return (int)span.TotalSeconds; 
      case "mm": return (int)span.TotalMinutes; 
      case "hh": return (int)span.TotalHours; 
      case "dd": return (int)span.TotalDays; 
     } 
     return 0; 
    } 
Cuestiones relacionadas