我需要使用System.DirectoryServices类迭代组的成员。
我看到的问题是,在获取组的DirectoryEntry后,“members”属性仅包含1500个条目。实际上,该团队已超过4000人。
是否有一些设置告诉DirectoryServices类不能检索超过1500个组成员?
答案 0 :(得分:3)
如果可以,请尝试使用.NET 3.5中的System.DirectoryServices.AccountManagement
命名空间。我没有任何那么大的团体尝试 - 但你应该能够得到那些成员:
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
GroupPrincipal group = GroupPrincipal.FindByIdentity("name of the group");
if(group != null)
{
foreach(Principal p in group.Members)
{
// do something
}
}
您可以在MSDN杂志上阅读有关S.DS.AM命名空间及其新功能的更多信息:Managing Directory Security Principals in the .NET Framework 3.5