I have a function witch tries to remove a member from a group

The problem is if you try to remove a member, without knowing the existence in the group, you could cause an exception.
So I try to enumerate its membership beforehand.

The problem now is that the member property stops after 3000 Entries, and I don't know a way to get more, or the next 3000 members of that group.

Here is my code

```
DirectoryEntry target_group = new DirectoryEntry(LDAP_group_DN);
if (target_group.Properties["member"].Contains(LDAP_member_to_remove_DN)) {
    target_group.Properties["member"].Remove(LDAP_member_to_remove_DN);
}
target_group.CommitChanges();

```

target\_group.Properties["member"] contains exactly 3000 entries, but in reality it is around 7500.

As a shorthand fix I am using the remove statement in a try/catch block without the .Contains() check, but that doesn't seem correct/beautiful/right.

Can anyone lead me to the correct way?

PS: I can not change the structure of our Directory.
This is a Group of RADIUS users, with should not be split up in more groups!