Gets a predefined object that compares two objects for structural equality.
Assembly: mscorlib (in mscorlib.dll)
Public Shared ReadOnly Property StructuralEqualityComparer As IEqualityComparer Get
public static IEqualityComparer StructuralEqualityComparer { get; }
public: static property IEqualityComparer^ StructuralEqualityComparer { IEqualityComparer^ get (); }
static member StructuralEqualityComparer : IEqualityComparer
Property Value
Type: System.Collections.IEqualityComparerA 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<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.
.NET Framework
Supported in: 4.NET Framework Client Profile
Supported in: 4Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.