/// <summary> /// Removes multiple kinds of members from a group in one step. /// Non-existing groups or member groups will be skipped. /// If all the parameters are null or empty, nothing will happen. /// </summary> /// <param name="groupId">Identifier of the container group. Cannot be 0.</param> /// <param name="userMembers">Collection of the user member identifiers. Can be null or empty.</param> /// <param name="groupMembers">Collection of the group member identifiers. Can be null or empty.</param> /// <param name="parentGroups">Collection of the parent group identifiers. Can be null or empty.</param> protected void RemoveMembersFromSecurityGroup(int groupId, IEnumerable <int> userMembers, IEnumerable <int> groupMembers, IEnumerable <int> parentGroups = null) { if (groupId == default(int)) { throw new ArgumentException("The groupId cannot be " + default(int)); } if (AllNullOrEmpty(groupMembers, userMembers, parentGroups)) { return; } var activity = new RemoveMembersFromGroupActivity(groupId, userMembers, groupMembers, parentGroups); activity.Execute(this); }
/// <summary> /// Removes one or more users from a group in one step. /// Non-existing group or member will be skipped. /// This method is a shortcut for RemoveMembersFromSecurityGroup(...). /// </summary> /// <param name="groupId">Identifier of the container group. Cannot be 0.</param> /// <param name="userMembers">Collection of the user member identifiers. Can be null or empty.</param> public virtual void RemoveUsersFromSecurityGroup(int groupId, IEnumerable <int> userMembers) { if (groupId == default) { throw new ArgumentException("The groupId cannot be " + default(int)); } if (AllNullOrEmpty(userMembers)) { return; } var activity = new RemoveMembersFromGroupActivity(groupId, userMembers, null, null); activity.Execute(this); }