public override int GetHashCode() { object id = GetPropertyValue("id"); if (id == null) { return base.GetHashCode(); } return id.GetHashCode(); } #endregion