public bool Equals(CultureName x, CultureName y) { if (ReferenceEquals(x, y)) { return(true); } if (ReferenceEquals(x, null)) { return(false); } if (ReferenceEquals(y, null)) { return(false); } if (x.GetType() != y.GetType()) { return(false); } return(EqualityComparer <Culture> .Default.Equals(x.Id, y.Id) && string.Equals(x.Name, y.Name)); }