即使pagesize设置为更大,directorysearcher对象的上限是5000
即使pagesize设置为更大,directorysearcher findall结果方法的上限是5000结果。 它似乎真的是,因为无论我得到什么5000结果。 这是C#
首先,它是服务器端设置,它限制单次搜索中返回的最大条目数。 默认值是1’000。
其次,如果你真的需要枚举超过1000个条目的限制,你应该查看分页搜索 。 很简单,将DirectorySearcher.PageSize
条目设置为一个值(小于系统限制),例如500,并且您将获得500个条目的页面结果。
您将获得的条目数量没有限制 – 您可以简单地枚举DirectorySearcher.FindAll()
集合,并且您应该能够以这种方式处理任意数量的条目。 AD服务器只需将您的结果以500页为单位进行批处理 – 一旦您枚举了一个页面,下一个将被交付。
渣
试着做
mySearcher.SizeLimit = int.MaxValue; mySearcher.PageSize = int.MaxValue;
它仍然限制在5k?
检查您的Active Directory或LDAP是否限制了查询结果。
我们最多定义了1000个元素。