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       

注釈

複数のタイムゾーンが1つのオフセットを共有するため、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 メソッドのオーバーロードによって、2つの DateTimeOffset 値が1つの時点を表すかどうかが決まります。Unlike the EqualsExact method, the overloads of the Equals method determine only whether two DateTimeOffset values represent a single point in time. 2つの値が同じ日付と時刻、および同じオフセットを持つことを示していません。They do not indicate that two values have the same date and time as well as the same offset.

適用対象

こちらもご覧ください