DateTimeOffset.Compare Method
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Compares two DateTimeOffset objects and indicates whether the first is earlier than the second, equal to the second, or later than the second.
Assembly: mscorlib (in mscorlib.dll)
'Declaration Public Shared Function Compare ( _ first As DateTimeOffset, _ second As DateTimeOffset _ ) As Integer
Parameters
- first
- Type: System.DateTimeOffset
The first object to compare.
- second
- Type: System.DateTimeOffset
The second object to compare.
Return Value
Type: System.Int32A signed integer that indicates whether the value of the first parameter is earlier than, later than, or the same time as the value of the second parameter, as the following table shows.
Return value | Description |
|---|---|
Less than zero | first is earlier than second. |
Zero | first is equal to second. |
Greater than zero | first is later than second. |
In performing the comparison, the method converts both the first and the second parameters to Coordinated Universal Time (UTC) before it performs the comparison. The method is equivalent to the following:
In other words, the Compare method determines whether two DateTimeOffset objects represent a single point in time. It directly compares neither dates and times nor offsets.
The following example illustrates calls to the Compare method to compare DateTimeOffset objects.
Module Example Private Enum TimeComparison As Integer Earlier = -1 Same = 0 Later = 1 End Enum Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock) Dim firstTime As New DateTimeOffset(#9/1/2007 6:45:00 AM#, _ New TimeSpan(-7, 0, 0)) Dim secondTime As DateTimeOffset = firstTime outputBlock.Text += String.Format("Comparing {0} and {1}: {2}", _ firstTime, secondTime, _ CType(DateTimeOffset.Compare(firstTime, secondTime), _ TimeComparison)) + vbCrLf secondTime = New DateTimeOffset(#9/1/2007 6:45:00 AM#, _ New TimeSpan(-6, 0, 0)) outputBlock.Text += String.Format("Comparing {0} and {1}: {2}", _ firstTime, secondTime, _ CType(DateTimeOffset.Compare(firstTime, secondTime), _ TimeComparison)) + vbCrLf secondTime = New DateTimeOffset(#9/1/2007 8:45:00 AM#, _ New TimeSpan(-5, 0, 0)) outputBlock.Text += String.Format("Comparing {0} and {1}: {2}", _ firstTime, secondTime, _ CType(DateTimeOffset.Compare(firstTime, secondTime), _ TimeComparison)) + vbCrLf ' The example displays the following output: ' Comparing 9/1/2007 6:45:00 AM -07:00 and 9/1/2007 6:45:00 AM -07:00: Same ' Comparing 9/1/2007 6:45:00 AM -07:00 and 9/1/2007 6:45:00 AM -06:00: Later ' Comparing 9/1/2007 6:45:00 AM -07:00 and 9/1/2007 8:45:00 AM -05:00: Same End Sub End Module