Mega Code Archive

 
Categories / VB.Net / Date Time
 

Difference Between DateTime, DateTimeOffset, and TimeZoneInfo

Imports System.Collections.ObjectModel Module TimeOffsets    Public Sub Main()       Dim thisTime As DateTimeOffset        thisTime = New DateTimeOffset(#06/10/2007#, New TimeSpan(-7, 0, 0))       ShowPossibleTimeZones(thisTime)        thisTime = New DateTimeOffset(#03/10/2007#, New TimeSpan(-6, 0, 0))         ShowPossibleTimeZones(thisTime)    End Sub    Private Sub ShowPossibleTimeZones(offsetTime As DateTimeOffset)       Dim offset As TimeSpan = offsetTime.Offset       Dim timeZones As ReadOnlyCollection(Of TimeZoneInfo)       Console.WriteLine("{0} could belong to the following time zones:",offsetTime.ToString())       timeZones = TimeZoneInfo.GetSystemTimeZones()            For Each timeZone As TimeZoneInfo In timeZones          If timeZone.GetUtcOffset(offsetTime.DateTime).Equals(offset) Then             Console.WriteLine("   {0}", timeZone.DisplayName)          End If          Next       Console.WriteLine()    End Sub End Module