namespace Pinwheel { public class User { public virtual string Username { get; set; } public override bool Equals(object obj) { return base.Equals(obj); } public bool Equals(User obj) { if(ReferenceEquals(null, obj)) return false; if(ReferenceEquals(this, obj)) return true; return Equals(obj.Username, Username); } public override int GetHashCode() { return (Username != null ? Username.GetHashCode() : 0); } } }