DateTimeOffset.Equals Method (DateTimeOffset, DateTimeOffset)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Determines whether two specified DateTimeOffset objects represent the same point in time.

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

public static bool Equals(
	DateTimeOffset first,
	DateTimeOffset second
)

Parameters

first
Type: System.DateTimeOffset

The first object to compare.

second
Type: System.DateTimeOffset

The second object to compare.

Return Value

Type: System.Boolean

true if the two DateTimeOffset objects have the same UtcDateTime value; otherwise, false.

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

return first.UtcDateTime == second.UtcDateTime;

In other words, the Equals(DateTimeOffset, DateTimeOffset) method determines whether the 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.

The following example illustrates calls to the Equals(DateTimeOffset, DateTimeOffset) method to test various pairs of DateTimeOffset objects for equality.

DateTimeOffset firstTime = new DateTimeOffset(2007, 11, 15, 11, 35, 00, 
                                    DateTimeOffset.Now.Offset);
DateTimeOffset secondTime = firstTime;
Console.WriteLine("{0} = {1}: {2}", 
                  firstTime, secondTime, 
                  DateTimeOffset.Equals(firstTime, secondTime));

// The value of firstTime remains unchanged
secondTime = new DateTimeOffset(firstTime.DateTime, 
             TimeSpan.FromHours(firstTime.Offset.Hours + 1));      
Console.WriteLine("{0} = {1}: {2}", 
                  firstTime, secondTime, 
                  DateTimeOffset.Equals(firstTime, secondTime));

// value of firstTime remains unchanged
secondTime = new DateTimeOffset(firstTime.DateTime + TimeSpan.FromHours(1), 
                                TimeSpan.FromHours(firstTime.Offset.Hours + 1));
Console.WriteLine("{0} = {1}: {2}", 
                  firstTime, secondTime, 
                  DateTimeOffset.Equals(firstTime, secondTime));
 // The example produces the following output:
 //       11/15/2007 11:35:00 AM -07:00 = 11/15/2007 11:35:00 AM -07:00: True
 //       11/15/2007 11:35:00 AM -07:00 = 11/15/2007 11:35:00 AM -06:00: False
 //       11/15/2007 11:35:00 AM -07:00 = 11/15/2007 12:35:00 PM -06:00: True       

Universal Windows Platform
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
Show: