DateTimeOffset.Equals Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
İki DateTimeOffset nesnenin eşit olup olmadığını veya bir DateTimeOffset nesnenin belirtilen bir nesneye eşit olup olmadığını belirler.
Aşırı Yüklemeler
Equals(DateTimeOffset) |
Geçerli DateTimeOffset nesnenin belirtilen DateTimeOffset nesneyle aynı zaman noktasını temsil edip etmediğini belirler. |
Equals(Object) |
Bir DateTimeOffset nesnenin belirtilen nesneyle aynı zaman noktasını temsil edip etmediğini belirler. |
Equals(DateTimeOffset, DateTimeOffset) |
Belirtilen DateTimeOffset iki nesnenin aynı zaman noktasını temsil edip etmediğini belirler. |
Equals(DateTimeOffset)
Geçerli DateTimeOffset nesnenin belirtilen DateTimeOffset nesneyle aynı zaman noktasını temsil edip etmediğini belirler.
public:
virtual bool Equals(DateTimeOffset other);
public bool Equals (DateTimeOffset other);
override this.Equals : DateTimeOffset -> bool
Public Function Equals (other As DateTimeOffset) As Boolean
Parametreler
- other
- DateTimeOffset
Geçerli DateTimeOffset nesneyle karşılaştıracak bir nesne.
Döndürülenler
true
her iki DateTimeOffset nesne de aynı UtcDateTime değere sahipse; değilse, false
.
Uygulamalar
Örnekler
Aşağıdaki örnekte, geçerli DateTimeOffset nesneyle eşitlik için nesneleri test DateTimeOffset etmek için yöntemine yapılan çağrılar Equals(DateTimeOffset) gösterilmektedir.
private static void CompareForEquality1()
{
DateTimeOffset firstTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
new TimeSpan(-7, 0, 0));
DateTimeOffset secondTime = firstTime;
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
secondTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
new TimeSpan(-6, 0, 0));
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
secondTime = new DateTimeOffset(2007, 9, 1, 8, 45, 0,
new TimeSpan(-5, 0, 0));
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
// The example displays the following output to the console:
// 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
let firstTime = DateTimeOffset(2007, 9, 1, 6, 45, 0, TimeSpan(-7, 0, 0))
let secondTime = firstTime
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
let secondTime = DateTimeOffset(2007, 9, 1, 6, 45, 0, TimeSpan(-6, 0, 0))
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
let secondTime = DateTimeOffset(2007, 9, 1, 8, 45, 0, TimeSpan(-5, 0, 0))
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
// The example displays the following output to the console:
// 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
Dim firstTime As New DateTimeOffset(#09/01/2007 6:45:00AM#, _
New TimeSpan(-7, 0, 0))
Dim secondTime As DateTimeOffset = firstTime
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
secondTime = New DateTimeOffset(#09/01/2007 6:45:00AM#, _
New TimeSpan(-6, 0, 0))
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
secondTime = New DateTimeOffset(#09/01/2007 8:45:00AM#, _
New TimeSpan(-5, 0, 0))
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
' The example displays the following output to the console:
' 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
Açıklamalar
Karşılaştırmayı gerçekleştirmeden önce, bu yöntem her iki DateTimeOffset nesnenin değerlerini Eşgüdümlü Evrensel Saat'e (UTC) dönüştürür. Yöntem aşağıdakine eşdeğerdir:
return this.UtcDateTime == other.UtcDateTime;
this.UtcDateTime = other.UtcDateTime
Return Me.UtcDateTime = other.UtcDateTime
Başka bir deyişle yöntemi, iki DateTimeOffset nesnenin Equals(DateTimeOffset) tek bir zaman noktasını temsil edip etmediğini belirler. Hiçbir tarihi, saati veya uzaklığı doğrudan karşılaştırmaz. İki DateTimeOffset nesnenin aynı saati temsil edip etmediğini ve aynı uzaklık değerine sahip olup olmadığını belirlemek için yöntemini kullanın EqualsExact .
DateTimeOffset Olmayan null
bir nesne, olan bir nesneden null
sonraki (veya daha büyük) olarak kabul edilir.
Yönteminin Equals(DateTimeOffset) bu aşırı yüklemesi yöntemini uygular IEquatable<T>.Equals . Parametrenin DateTimeOffset.Equals(Object) bir nesneden dönüştürülmesi gerekmediğinden other
aşırı yüklemeden biraz daha iyi performans sunar.
Ayrıca bkz.
Şunlara uygulanır
Equals(Object)
Bir DateTimeOffset nesnenin belirtilen nesneyle aynı zaman noktasını temsil edip etmediğini belirler.
public:
override bool Equals(System::Object ^ obj);
public override bool Equals (object obj);
public override bool Equals (object? obj);
override this.Equals : obj -> bool
Public Overrides Function Equals (obj As Object) As Boolean
Parametreler
- obj
- Object
Geçerli DateTimeOffset nesneyle karşılaştıracak nesne.
Döndürülenler
true
obj
parametresi bir DateTimeOffset nesneyse ve geçerli DateTimeOffset nesneyle aynı zaman noktasını temsil ediyorsa; değilse, false
.
Örnekler
Aşağıdaki örnek, geçerli DateTimeOffset nesnenin diğer DateTimeOffset birkaç nesneye eşit olup olmadığının yanı sıra null başvuru ve nesneye DateTime de eşit olup olmadığını gösterir.
private static void CompareForEquality2()
{
DateTimeOffset firstTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
new TimeSpan(-7, 0, 0));
object secondTime = firstTime;
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
secondTime = new DateTimeOffset(2007, 9, 1, 6, 45, 0,
new TimeSpan(-6, 0, 0));
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
secondTime = new DateTimeOffset(2007, 9, 1, 8, 45, 0,
new TimeSpan(-5, 0, 0));
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
secondTime = null;
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
secondTime = new DateTime(2007, 9, 1, 6, 45, 00);
Console.WriteLine("{0} = {1}: {2}",
firstTime, secondTime,
firstTime.Equals(secondTime));
// The example displays the following output to the console:
// 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
// 9/1/2007 6:45:00 AM -07:00 = : False
// 9/1/2007 6:45:00 AM -07:00 = 9/1/2007 6:45:00 AM: False
let compareForEquality2 () =
let firstTime = DateTimeOffset(2007, 9, 1, 6, 45, 0, TimeSpan(-7, 0, 0))
let secondTime: obj = firstTime
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
let secondTime = DateTimeOffset(2007, 9, 1, 6, 45, 0, TimeSpan(-6, 0, 0))
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
let secondTime = DateTimeOffset(2007, 9, 1, 8, 45, 0, TimeSpan(-5, 0, 0))
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
let secondTime = null
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
let secondTime = DateTime(2007, 9, 1, 6, 45, 00)
printfn $"{firstTime} = {secondTime}: {firstTime.Equals secondTime}"
// The example displays the following output to the console:
// 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
// 9/1/2007 6:45:00 AM -07:00 = : False
// 9/1/2007 6:45:00 AM -07:00 = 9/1/2007 6:45:00 AM: False
Dim firstTime As New DateTimeOffset(#09/01/2007 6:45:00AM#, _
New TimeSpan(-7, 0, 0))
Dim secondTime As Object = firstTime
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
secondTime = New DateTimeOffset(#09/01/2007 6:45:00AM#, _
New TimeSpan(-6, 0, 0))
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
secondTime = New DateTimeOffset(#09/01/2007 8:45:00AM#, _
New TimeSpan(-5, 0, 0))
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
secondTime = Nothing
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
secondTime = #9/1/2007 6:45AM#
Console.WriteLine("{0} = {1}: {2}", _
firstTime, secondTime, _
firstTime.Equals(secondTime))
' The example displays the following output to the console:
' 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
' 9/1/2007 6:45:00 AM -07:00 = : False
' 9/1/2007 6:45:00 AM -07:00 = 9/1/2007 6:45:00 AM: False
Açıklamalar
Karşılaştırmayı gerçekleştirmeden önce, bu yöntem hem geçerli DateTimeOffset nesnenin obj
hem de parametrenin değerlerini Eşgüdümlü Evrensel Saat'e (UTC) dönüştürür. Yöntem aşağıdakine eşdeğerdir:
return this.UtcDateTime == ((DateTimeOffset) obj).UtcDateTime;
this.UtcDateTime = (obj :?> DateTimeOffset).UtcDateTime
Return Me.UtcDateTime = DirectCast(obj, DatetimeOffset).UtcDateTime
Başka bir deyişle yöntemi, DateTimeOffset.Equals(Object) geçerli DateTimeOffset nesnenin ve belirtilen nesnenin zaman içinde tek bir noktayı temsil edip etmediğini belirler. Hiçbir tarihi, saati veya uzaklığı doğrudan karşılaştırmaz. İki DateTimeOffset nesnenin aynı saati temsil edip etmediğini ve aynı uzaklık değerine sahip olup olmadığını belirlemek için yöntemini kullanın EqualsExact .
ise obj
null
veya çalışma zamanı türü obj
değilse DateTimeOffsetyöntemi döndürür false
.
Ayrıca bkz.
Şunlara uygulanır
Equals(DateTimeOffset, DateTimeOffset)
Belirtilen DateTimeOffset iki nesnenin aynı zaman noktasını temsil edip etmediğini belirler.
public:
static bool Equals(DateTimeOffset first, DateTimeOffset second);
public static bool Equals (DateTimeOffset first, DateTimeOffset second);
static member Equals : DateTimeOffset * DateTimeOffset -> bool
Public Shared Function Equals (first As DateTimeOffset, second As DateTimeOffset) As Boolean
Parametreler
- first
- DateTimeOffset
Karşılaştırma yapılacak ilk nesne.
- second
- DateTimeOffset
Karşılaştırma yapılacak ikinci nesne.
Döndürülenler
true
iki DateTimeOffset nesne aynı UtcDateTime değere sahipse; değilse, false
.
Örnekler
Aşağıdaki örnekte, eşitlik için çeşitli nesne çiftlerini test etmek için yöntemine DateTimeOffset yapılan çağrılar Equals(DateTimeOffset, DateTimeOffset) gösterilmektedir.
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
let firstTime = DateTimeOffset(2007, 11, 15, 11, 35, 00, DateTimeOffset.Now.Offset)
let secondTime = firstTime
printfn $"{firstTime} = {secondTime}: {DateTimeOffset.Equals(firstTime, secondTime)}"
// The value of firstTime remains unchanged
let secondTime = DateTimeOffset(firstTime.DateTime, TimeSpan.FromHours(firstTime.Offset.Hours + 1 |> float))
printfn $"{firstTime} = {secondTime}: {DateTimeOffset.Equals(firstTime, secondTime)}"
// value of firstTime remains unchanged
let secondTime = DateTimeOffset(firstTime.DateTime + TimeSpan.FromHours 1, TimeSpan.FromHours(firstTime.Offset.Hours + 1 |> float))
printfn $"{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
Dim firstTime As New DateTimeOffset(#11/15/2007 11:35AM#, _
DateTimeOffset.Now.Offset)
Dim secondTime As DateTimeOffset = 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
Açıklamalar
Karşılaştırmayı gerçekleştirmeden önce bu yöntem her iki nesneyi de DateTimeOffset Eşgüdümlü Evrensel Saat'e (UTC) dönüştürür. Yöntem aşağıdakine eşdeğerdir:
return first.UtcDateTime == second.UtcDateTime;
first.UtcDateTime = second.UtcDateTime
Return first.UtcDateTime = second.UtcDateTime
Başka bir deyişle yöntemi, Equals(DateTimeOffset, DateTimeOffset) iki DateTimeOffset nesnenin tek bir zaman noktasını temsil edip etmediğini belirler. Hiçbir tarihi, saati veya uzaklığı doğrudan karşılaştırmaz. İki DateTimeOffset nesnenin aynı saati temsil edip etmediğini ve aynı uzaklık değerine sahip olup olmadığını belirlemek için yöntemini kullanın EqualsExact .