Interessante Frage! Daten und Zeiten sind ein notorisch schwer zu lösendes Problem. Es scheint so einfach zu sein, aber es ist so schwierig, es wirklich zu tun. Wir sind alle so daran gewöhnt, unsere Uhren für die Zeit anzuschauen, obwohl es in der Tat viel schwieriger ist, wenn man Zeitzonen und Sommerzeit benötigt.
Werfen Sie einen Blick auf die ausgezeichnete Noda Time Bibliothek. Auch wenn Sie es nicht verwenden, bietet das Benutzerhandbuch einige großartige Einblicke, warum Daten und Zeiten so schwer zu lösen sind.
Ich vermute, dass Ihr spezielles Problem mit der Tatsache zusammenhängt, dass Ihre Zeitzone Eastern Time ist, die gerade Sommerzeit beobachtet, so dass Ihre Zeitzone 4 Stunden hinter UTC liegt.
Um die Zeit, um Ihre Benutzer zu präsentieren Sie müssen wissen, in welcher Zeitzone sie sind. Wenn sie in New York sind, dann müssen Sie UTC-04:00
verwenden, wenn sie in Kalifornien sind Sie müssen UTC-08:00
verwenden und wenn sie in Neu Delhi sind, müssen Sie UTC+05:30
verwenden.
Dies könnte sich jedoch ändern, wenn sie aufhören, die Sommerzeit zu beobachten, aber seien Sie vorsichtig, da es keine feste Regel dafür gibt. Eastern Time hört am ersten Sonntag im November auf, die Sommerzeit zu stoppen, British Time stoppt am letzten Sonntag im Oktober, Indian Time hat überhaupt keine Sommerzeit und die Regionen der südlichen Hemisphäre beobachten in den Wintermonaten die Sommerzeit (zumindest aus der Nordperspektive) Hemisphäre Regionen).
Viel Glück!
Ihr Server wird immer in der gleichen Zeitzone sein, also nein. Sie müssen die Zeitzonen Ihrer Benutzer verfolgen und die Zeit für jede Anfrage konvertieren. – dckuehn
UtcNow gibt Ihnen auf der ganzen Welt Zeit, die Sie online lesen können. Wenn Ihre UTC 4 Stunden vor UTC voraus ist, dann hat einer von Ihnen die Uhr falsch eingestellt. – eugeneK
Geben Sie es einfach als UTC zurück und überlassen Sie dem Client die Konvertierung der lokalen Zeit von ihrer Seite. –