public void AreEqualWhenAllPropertiesAreCaseEqual() { var left = new Target { Property1 = "Test", Property2 = "a string", }; var right = new Target { Property1 = "test", Property2 = "a string", }; Assert.Equal(left, right); Assert.Equal(left.GetHashCode(), right.GetHashCode()); Assert.Equal(HashCode.Aggregate(0, HashCode.Aggregate(StringComparer.OrdinalIgnoreCase.GetHashCode(left.Property1), left.Property2.GetHashCode())), left.GetHashCode()); }
/// <summary> /// Returns a hash code for this instance. /// </summary> /// <returns> /// A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. /// </returns> public override int GetHashCode() { return(HashCode.Aggregate(Project.GetHashCode(), HashCode.Aggregate((Configuration?.GetHashCode()).GetValueOrDefault(), (Platform?.GetHashCode()).GetValueOrDefault()))); }
public int GetHashCode(ResourceTableEntry obj) { return(HashCode.Aggregate(obj?.Container.GetHashCode() ?? 0, obj?.Key.GetHashCode() ?? 0)); }