public virtual bool IsMember(User.User user, GroupMemberService groupMemberService) { AssertionConcern.NotNull(user, "User must not be null."); AssertionConcern.Equals(this.TenantId, user.TenantId, "Wrong tenant for this group."); AssertionConcern.True(user.IsEnabled, "User is not enabled."); bool isMember = this.GroupMembers.Contains(user.ToGroupMember()); if(isMember) { isMember = groupMemberService.ConfirmUser(this, user); } else { isMember = groupMemberService.IsUserInNestedGroup(this, user); } return isMember; }