DateTimeOffset.EqualsExact(DateTimeOffset) 方法

定義

判斷目前 DateTimeOffset 物件與指定的 DateTimeOffset 物件是否代表相同的時間且具有相同的位移。Determines whether the current DateTimeOffset object represents the same time and has the same offset as a specified DateTimeOffset object.

public:
 bool EqualsExact(DateTimeOffset other);
public bool EqualsExact (DateTimeOffset other);
member this.EqualsExact : DateTimeOffset -> bool
Public Function EqualsExact (other As DateTimeOffset) As Boolean

參數

other
DateTimeOffset

要與目前 DateTimeOffset 物件進行比較的物件。The object to compare to the current DateTimeOffset object.

傳回

如果目前 DateTimeOffset 物件與 other 具有相同的日期和時間值以及相同的 Offset 值,則為 true,否則為 falsetrue if the current DateTimeOffset object and other have the same date and time value and the same Offset value; otherwise, false.

範例

下列範例說明如何使用 EqualsExact 方法來比較類似的 DateTimeOffset 物件。The following example illustrates the use of the EqualsExact method to compare similar DateTimeOffset objects.

DateTimeOffset instanceTime = new DateTimeOffset(2007, 10, 31, 0, 0, 0, 
                              DateTimeOffset.Now.Offset);

DateTimeOffset otherTime = instanceTime;
Console.WriteLine("{0} = {1}: {2}", 
                  instanceTime, otherTime, 
                  instanceTime.EqualsExact(otherTime));
                  
otherTime = new DateTimeOffset(instanceTime.DateTime, 
            TimeSpan.FromHours(instanceTime.Offset.Hours + 1));
Console.WriteLine("{0} = {1}: {2}", 
                  instanceTime, otherTime, 
                  instanceTime.EqualsExact(otherTime));
                  
otherTime = new DateTimeOffset(instanceTime.DateTime + TimeSpan.FromHours(1), 
                TimeSpan.FromHours(instanceTime.Offset.Hours + 1));
Console.WriteLine("{0} = {1}: {2}", 
                  instanceTime, otherTime,
                  instanceTime.EqualsExact(otherTime));
// The example produces the following output:
//       10/31/2007 12:00:00 AM -07:00 = 10/31/2007 12:00:00 AM -07:00: True
//       10/31/2007 12:00:00 AM -07:00 = 10/31/2007 12:00:00 AM -06:00: False
//       10/31/2007 12:00:00 AM -07:00 = 10/31/2007 1:00:00 AM -06:00: False       
Dim instanceTime As New DateTimeOffset(#10/31/2007 12:00AM#, _
                                       DateTimeOffset.Now.Offset)

Dim otherTime As DateTimeOffset = instanceTime
Console.WriteLine("{0} = {1}: {2}", _
                  instanceTime, otherTime, _
                  instanceTime.EqualsExact(otherTime))
                  
otherTime = New DateTimeOffset(instanceTime.DateTime, _
                               TimeSpan.FromHours(instanceTime.Offset.Hours + 1))
Console.WriteLine("{0} = {1}: {2}", _
                  instanceTime, otherTime, _
                  instanceTime.EqualsExact(otherTime))
                  
otherTime = New DateTimeOffset(instanceTime.DateTime + TimeSpan.FromHours(1), _
                                TimeSpan.FromHours(instanceTime.Offset.Hours + 1))
Console.WriteLine("{0} = {1}: {2}", _
                  instanceTime, otherTime, _
                  instanceTime.EqualsExact(otherTime))
' The example produces the following output:
'       10/31/2007 12:00:00 AM -07:00 = 10/31/2007 12:00:00 AM -07:00: True
'       10/31/2007 12:00:00 AM -07:00 = 10/31/2007 12:00:00 AM -06:00: False
'       10/31/2007 12:00:00 AM -07:00 = 10/31/2007 1:00:00 AM -06:00: False       

備註

因為多個時區共用單一位移,所以 true 的傳回值不保證目前和 other 物件都代表相同時區的時間。Because multiple time zones share a single offset, a return value of true does not guarantee that the current and the other object represent times in the same time zone.

不同于 EqualsExact 方法,Equals 方法的多載只會判斷兩個 DateTimeOffset 值是否代表單一時間點。Unlike the EqualsExact method, the overloads of the Equals method determine only whether two DateTimeOffset values represent a single point in time. 它們不表示兩個值具有相同的日期和時間,以及相同的位移。They do not indicate that two values have the same date and time as well as the same offset.

適用於

另請參閱