31 lines
856 B
C#
31 lines
856 B
C#
namespace Compat.Runtime.Serialization
|
|
{
|
|
internal class DataContractPairKey
|
|
{
|
|
private readonly object _object1;
|
|
private readonly object _object2;
|
|
|
|
public DataContractPairKey(object object1, object object2)
|
|
{
|
|
_object1 = object1;
|
|
_object2 = object2;
|
|
}
|
|
|
|
public override bool Equals(object other)
|
|
{
|
|
DataContractPairKey otherKey = other as DataContractPairKey;
|
|
if (otherKey == null)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
return ((otherKey._object1 == _object1 && otherKey._object2 == _object2) || (otherKey._object1 == _object2 && otherKey._object2 == _object1));
|
|
}
|
|
|
|
public override int GetHashCode()
|
|
{
|
|
return _object1.GetHashCode() ^ _object2.GetHashCode();
|
|
}
|
|
}
|
|
}
|