DateTimeOffset.Equals Method (DateTimeOffset)

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Determines whether the current DateTimeOffset object represents the same point in time as a specified DateTimeOffset object.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Function Equals ( _
    other As DateTimeOffset _
) As Boolean
public bool Equals(
    DateTimeOffset other
)

Parameters

Return Value

Type: System.Boolean
true if both DateTimeOffset objects have the same UtcDateTime value; otherwise, false.

Implements

IEquatable<T>.Equals(T)

Remarks

Before it performs the comparison, this method converts the values of both DateTimeOffset objects to Coordinated Universal Time (UTC). The method is equivalent to the following:

Return Me.UtcDateTime = other.UtcDateTime
return this.UtcDateTime == other.UtcDateTime;

In other words, the Equals(DateTimeOffset) method determines whether two DateTimeOffset objects represent a single point in time. It directly compares neither dates and times nor offsets. To determine whether two DateTimeOffset objects represent the same time and have the same offset value, use the EqualsExact method.

A DateTimeOffset object that is not nulla null reference (Nothing in Visual Basic) is considered to be later (or greater) than one that is nulla null reference (Nothing in Visual Basic).

This overload of the Equals(DateTimeOffset) method implements the IEquatable<T>.Equals method. It offers slightly better performance than the DateTimeOffset.Equals(Object) overload because the other parameter does not have to be converted from an object.

Examples

The following example illustrates calls to the Equals(DateTimeOffset) method to test DateTimeOffset objects for equality with the current DateTimeOffset object.

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("{0} = {1}: {2}", _
                  firstTime, secondTime, _
                  firstTime.Equals(secondTime)) + vbCrLf

secondTime = New DateTimeOffset(#9/1/2007 6:45:00 AM#, _
                 New TimeSpan(-6, 0, 0))
outputBlock.Text += String.Format("{0} = {1}: {2}", _
                 firstTime, secondTime, _
                 firstTime.Equals(secondTime)) + vbCrLf

secondTime = New DateTimeOffset(#9/1/2007 8:45:00 AM#, _
                 New TimeSpan(-5, 0, 0))
outputBlock.Text += String.Format("{0} = {1}: {2}", _
                 firstTime, secondTime, _
                 firstTime.Equals(secondTime)) + vbCrLf
' The example displays the following output:
'       9/1/2007 6:45:00 AM -07:00 = 9/1/2007 6:45:00 AM -07:00: True
'       9/1/2007 6:45:00 AM -07:00 = 9/1/2007 6:45:00 AM -06:00: False
'       9/1/2007 6:45:00 AM -07:00 = 9/1/2007 8:45:00 AM -05:00: True
private static void CompareForEquality1(System.Windows.Controls.TextBlock outputBlock)
{
   DateTimeOffset firstTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
                              new TimeSpan(-7, 0, 0));

   DateTimeOffset secondTime = firstTime;
   outputBlock.Text += String.Format("{0} = {1}: {2}",
                     firstTime, secondTime,
                     firstTime.Equals(secondTime)) + "\n";

   secondTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
                    new TimeSpan(-6, 0, 0));
   outputBlock.Text += String.Format("{0} = {1}: {2}",
                    firstTime, secondTime,
                    firstTime.Equals(secondTime)) + "\n";

   secondTime = new DateTimeOffset(2007, 9, 1, 8, 45, 0,
                    new TimeSpan(-5, 0, 0));
   outputBlock.Text += String.Format("{0} = {1}: {2}",
                    firstTime, secondTime,
                    firstTime.Equals(secondTime)) + "\n";
   // The example displays the following output:
   //      9/1/2007 6:45:00 AM -07:00 = 9/1/2007 6:45:00 AM -07:00: True
   //      9/1/2007 6:45:00 AM -07:00 = 9/1/2007 6:45:00 AM -06:00: False
   //      9/1/2007 6:45:00 AM -07:00 = 9/1/2007 8:45:00 AM -05:00: True       

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.