Delen via


Datums, tijden en tijdzones

Naast de basisstructuur DateTime biedt .NET de volgende klassen die ondersteuning bieden voor het werken met tijdzones:

  • TimeZone

    Gebruik deze klasse om te werken met de lokale tijdzone van het systeem en de UTC-zone (Coordinated Universal Time). De functionaliteit van de TimeZone klasse wordt grotendeels vervangen door de TimeZoneInfo klasse.

  • TimeZoneInfo

    Gebruik deze klasse om te werken met elke tijdzone die vooraf is gedefinieerd op een systeem, om nieuwe tijdzones te maken en om eenvoudig datums en tijden van de ene tijdzone naar de andere te converteren. Gebruik voor nieuwe ontwikkeling de TimeZoneInfo klasse in plaats van de TimeZone klasse.

  • DateTimeOffset

    Gebruik deze structuur om te werken met datums en tijden waarvan de verschuiving (of het verschil) van UTC bekend is. De DateTimeOffset structuur combineert een datum- en tijdwaarde met de verschuiving van die tijd van UTC. Vanwege de relatie met UTC identificeert een afzonderlijke datum- en tijdwaarde ondubbelzinnig één bepaald tijdstip. Dit maakt een DateTimeOffset waarde draagbaarer van de ene computer naar de andere dan een DateTime waarde.

Vanaf .NET 6 zijn de volgende typen beschikbaar:

  • DateOnly

    Gebruik deze structuur wanneer u werkt met een waarde die alleen een datum vertegenwoordigt. De datum vertegenwoordigt de hele dag, van het begin van de dag tot het einde. DateOnly heeft een bereik van 0001-01-01 door 9999-12-31. En dit type vertegenwoordigt de combinatie van maand, dag en jaar zonder een specifieke tijd. Als u eerder een DateTime type in uw code hebt gebruikt om een datum weer te geven die de tijd negeerde, gebruikt u dit type op zijn plaats.

  • TimeOnly

    Gebruik deze structuur om een tijd zonder datum weer te geven. De tijd vertegenwoordigt de uren, minuten en seconden van een niet-specifieke dag. TimeOnly heeft een bereik van 00:00:00.0000000 tot 23:59:59.9999999. Dit type kan worden gebruikt om uw code te vervangen DateTime en TimeSpan typen wanneer u deze typen hebt gebruikt om een tijd weer te geven.

De volgende sectie bevat de informatie die u nodig hebt om te werken met tijdzones en om tijdzonebewuste toepassingen te maken waarmee datums en tijden van de ene tijdzone naar de andere kunnen worden geconverteerd.

In deze sectie

Overzicht van tijdzone
Hierin worden de terminologie, concepten en problemen besproken die betrekking hebben op het maken van tijdzonebewuste toepassingen.

Kiezen tussen DateTime, DateTimeOffset, TimeSpan en TimeZoneInfo
Hier wordt besproken wanneer u de DateTime, DateTimeOffseten TimeZoneInfo typen gebruikt bij het werken met datum- en tijdgegevens.

De tijdzones zoeken die zijn gedefinieerd op een lokaal systeem
Hierin wordt beschreven hoe u de tijdzones opsommen die op een lokaal systeem zijn gevonden.

Procedure: Tijdzones opsommen die aanwezig zijn op een computer
Hier vindt u voorbeelden waarin de tijdzones worden opgesomd die zijn gedefinieerd in het register van een computer en waarmee gebruikers een vooraf gedefinieerde tijdzone in een lijst kunnen selecteren.

Procedure: Toegang krijgen tot de vooraf gedefinieerde UTC- en lokale tijdzoneobjecten
Hierin wordt beschreven hoe u toegang hebt tot Coordinated Universal Time en de lokale tijdzone.

Procedure: Een TimeZoneInfo-object instantiëren
Hierin wordt beschreven hoe u een TimeZoneInfo object kunt instantiëren vanuit het lokale systeemregister.

Een DateTimeOffset-object instantiëren
Beschrijft de manieren waarop een DateTimeOffset object kan worden geïnstantieerd en de manieren waarop een DateTime waarde kan worden geconverteerd naar een DateTimeOffset waarde.

Procedure: Tijdzones maken zonder regels voor aanpassing
Hierin wordt beschreven hoe u een aangepaste tijdzone maakt die de overgang naar en van zomertijd niet ondersteunt.

Procedure: Tijdzones maken met aanpassingsregels
Hierin wordt beschreven hoe u een aangepaste tijdzone maakt die ondersteuning biedt voor een of meer overgangen naar en van zomertijd.

Tijdzones opslaan en herstellen
Beschrijft TimeZoneInfo de ondersteuning voor serialisatie en deserialisatie van tijdzonegegevens en illustreert enkele van de scenario's waarin deze functies kunnen worden gebruikt.

Procedure: Tijdzones opslaan in een ingesloten resource
Hierin wordt beschreven hoe u een aangepaste tijdzone maakt en de bijbehorende gegevens opslaat in een resourcebestand.

Procedure: Tijdzones herstellen vanuit een ingesloten resource
Hierin wordt beschreven hoe u aangepaste tijdzones kunt instantiëren die zijn opgeslagen in een ingesloten resourcebestand.

Rekenkundige bewerkingen uitvoeren met datums en tijden
Hierin worden de problemen besproken die betrokken zijn bij het toevoegen, aftrekken en vergelijken en vergelijken DateTime van DateTimeOffset waarden.

Instructies: Tijdzones gebruiken in datum- en tijdberekeningen
Beschrijft hoe u datum- en tijdberekeningen uitvoert die de aanpassingsregels van een tijdzone weerspiegelen.

Converteren tussen DateTime en DateTimeOffset
Hierin wordt beschreven hoe u tussen DateTime en DateTimeOffset waarden converteert.

Tijd tussen tijdzones converteren
Hierin wordt beschreven hoe u tijden converteert van de ene tijdzone naar de andere.

Procedure: Dubbelzinnige tijden oplossen
Hierin wordt beschreven hoe u een dubbelzinnige tijd kunt oplossen door deze toe te koppelen aan de standaardtijd van de tijdzone.

Procedure: Gebruikers toestaan om dubbelzinnige tijden op te lossen
Hierin wordt beschreven hoe een gebruiker de toewijzing tussen een dubbelzinnige lokale tijd en Coordinated Universal Time kan bepalen.

Verwijzing

System.TimeZoneInfo