以下のコードは問題なく動作しますが、コードによって結果が 1500 ユーザーに制限されており、1500 人を超えるユーザーがいます。私がやろうとしているのは、特定のグループのメンバーであるすべてのユーザーのリストを取得することです。PageSize 設定があることは知っDirectorySearcher
ていますが、DirectoryEntry PageSize を設定する方法を見つけることができず、そのグループのメンバーのみをプルします。
ページサイズを変更する方法を知っている人はいますか? または、特定のグループのメンバーをページサイズに対応する別の方法でプルする方法はありますか?
DirectoryEntry dEntryhighlevel = new DirectoryEntry("LDAP://CN=Users,OU=MyOu,OU=Clients,OU=Home,DC=bridgeTech,DC=net");
foreach (object dn in dEntryhighlevel.Properties["member"])
{
DirectoryEntry singleEntry = new DirectoryEntry("LDAP://" + dn);
DirectorySearcher dSearcher = new DirectorySearcher(singleEntry);
//filter just user objects
dSearcher.SearchScope = SearchScope.Base;
//dSearcher.Filter = "(&(objectClass=user)(dn=" + dn + "))";
//dSearcher.PageSize = 1000;
SearchResult singleResult = null;
singleResult = dSearcher.FindOne();
if (singleResult != null)
{
string Last_Name = singleResult.Properties["sn"][0].ToString();
string First_Name = singleResult.Properties["givenname"][0].ToString();
string userName = singleResult.Properties["samAccountName"][0].ToString();
string Email_Address = singleResult.Properties["mail"][0].ToString();
OriginalList.Add(Last_Name + "|" + First_Name + "|" + userName + "|" + Email_Address);
}
singleEntry.Close();
}