.
im .NET -Framework waren DateTime und DateTimeOffset zwei verschiedene Zeitweisen, jeweils Vor- und Nachteile und anwendbare Szenarien.
datetime
DateTime bedeutet "Kalenderzeit", den spezifischen Ort im Kalender (z. B. "Ostzeit"). Es hat zwei Attribute, <.> .Kind und .utcdatetime :
.Kind Die angegebene Zeit ist nicht spezifiziert (kein verbundener Kalender), lokal
(basierend auf der aktuellen Zeitzone) oder UTC (in der Welt koordiniert).
.utcdatetime Es ist eine äquivalente UTC -Darstellung der Kalenderzeit.
datetimeOffset
DateTimeOffset bedeutet "sofortige Zeit", was der allgemeine Zeitpunkt für alle ist. Es erfasst lokale - und utc Zeit als einzelne Entität:
.Localdatetime zeigt die lokale Zeit der angegebenen Zeitzone an.
.utcdates bedeutet den gleichen Moment in UTC.
.Offset ist der Unterschied zwischen lokaler Zeit und UTC.
Wann wird es verwendet? -
dateTime:
-
zeigt die Zeit an (z. B. "Ostzeit um 9:00 Uhr morgens").
zwischen Zeit und UTC konvertieren. -
Achten Sie jedoch darauf, die Hypothese zu behandeln .Kind ist die Situation der nicht speziellen.
DateTimeOffset:
Stellen Sie sicher, dass die Genauigkeit einer bestimmten Zeit.
- Verfolgung der Zeit mit der zugehörigen lokalen Zeit (z. B. "östliche Zeit um 9:00 Uhr am 1. Januar 2023").
Wenn die früher aufgezeichnete Änderung der zuvor aufgezeichneten DateTimeOffset geändert wird, reicht nur der Offset nicht aus, um die Genauigkeit zu gewährleisten.
-
-
Aktivitäten: Die Perspektive des Fotografen -
Stellen Sie sich vor, ein Fotograf steht auf der Kalenderzeitleiste und verwendet eine Kamera, um auf der Person zu stehen, die auf der sofortigen Zeitleiste steht. Die Perspektive der Kamera repräsentiert die .Offset of datetimeOffset. Selbst wenn sich die Zeitzone ändern kann, zeigt jeder auf denselben Moment. Es ist jedoch bekannt, dass die Menge an Offset nicht ausreicht, um die spezifische Zeitzone zu bestimmen.
- Gleichzeitig repräsentiert UTC die auf einem Stativ installierte Kamera mit einer soliden Hand und einer Verschiebung von Null.
Best Practice
-
- Wenn Sie die DateTimeOffset -Werte vergleichen, standern Sie sie in Nullverschiebung.
- Für Unit -Tests, testen Sie datetimeOffset -Werte und .Offset -Eigenschaften.
Achten Sie auf die versteckte Konvertierung von DateTime in datetimeOffset, da sie zu unerwarteten Ergebnissen führen können.
Das obige ist der detaillierte Inhalt vonDateTime vs. DateTimeOffset: Wann sollten Sie sofortige vs. Kalenderzeit in .NET verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!