public void Update(GroupBan?other) { if (other is null) { return; } if (GroupId != other.GroupId) { GroupId = other.GroupId; OnPropertyChanged(nameof(GroupId)); } if (!LastModifiedBy.DeepEquals(other.LastModifiedBy)) { LastModifiedBy.Update(other.LastModifiedBy); OnPropertyChanged(nameof(LastModifiedBy)); } if (!CreatedBy.DeepEquals(other.CreatedBy)) { CreatedBy.Update(other.CreatedBy); OnPropertyChanged(nameof(CreatedBy)); } if (DateBanned != other.DateBanned) { DateBanned = other.DateBanned; OnPropertyChanged(nameof(DateBanned)); } if (DateExpires != other.DateExpires) { DateExpires = other.DateExpires; OnPropertyChanged(nameof(DateExpires)); } if (Comment != other.Comment) { Comment = other.Comment; OnPropertyChanged(nameof(Comment)); } if (!BungieNetUserInfo.DeepEquals(other.BungieNetUserInfo)) { BungieNetUserInfo.Update(other.BungieNetUserInfo); OnPropertyChanged(nameof(BungieNetUserInfo)); } if (!DestinyUserInfo.DeepEquals(other.DestinyUserInfo)) { DestinyUserInfo.Update(other.DestinyUserInfo); OnPropertyChanged(nameof(DestinyUserInfo)); } }