.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.