.NET DateTime, andere Auflösung beim Konvertieren in und aus OADate?

Ich konvertiere eine DateTime nach OADate. Ich hatte erwartet, beim Konvertieren des OADate genau dieselbe DateTime zu erhalten, aber jetzt hat es nur eine Auflösung von Millisekunden und ist daher anders.

var a = DateTime.UtcNow;
double oadate = a.ToOADate();
var b = DateTime.FromOADate(oadate);
int compare = DateTime.Compare(a, b); 

//Compare is not 0; the date times are not the same

Ticks von einem: 634202170964319073

Ticks von b: 634202170964310000

The OADate double: 40437.290467951389

Was ist der Grund dafür? Die Auflösung von DateTime ist eindeutig gut genug.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage