StructuralComparisons.StructuralEqualityComparer Property

.NET Framework (current version)
 

Gets a predefined object that compares two objects for structural equality.

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

Public Shared ReadOnly Property StructuralEqualityComparer As IEqualityComparer

Property Value

Type: System.Collections.IEqualityComparer

A predefined object that is used to compare two collection objects for structural equality.

When the IComparer object returned by this property is passed to the equality comparison method of a collection object, such as Array.IStructuralEquatable.Equals(Object, IEqualityComparer) or Tuple(Of T1, T2, T3).IStructuralEquatable.Equals(Object, IEqualityComparer), its IEqualityComparer.Equals method is called for each member of an array or for each component of a tuple. This implementation of the Equals method behaves as follows when it compares each item of a collection object with the corresponding item of another collection object:

  • If both items are null, it considers the two items to be equal.

  • If one item is null but the other item is not, it considers the two items to be unequal.

  • If the first item in the comparison can be cast to an IStructuralEquatable object (in other words, if it is a collection object that implements the IStructuralEquatable interface), it calls the IStructuralEquatable.Equals method.

  • If the first item in the comparison cannot be cast to an IStructuralEquatable object (in other words, if it is not a collection object that implements the IStructuralEquatable interface), it calls the item's Equals method.

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