【发布时间】:2010-07-08 15:35:56
【问题描述】:
我正在尝试进行 LDAP 搜索,但是我不断收到以下错误:
Unhandled Exception: System.Runtime.InteropServices.COMException (0x80072024): T
he administrative limit for this request was exceeded.
at System.DirectoryServices.SearchResultCollection.ResultsEnumerator.MoveNext
()
at System.DirectoryServices.DirectorySearcher.FindOne()
代码如下:(FindOne() 抛出错误)
DirectoryEntry dirEntry = new DirectoryEntry("LDAP://myldap.com:1701/ou=People,o=My Company,c=CA", "", "", AuthenticationTypes.Anonymous);
DirectorySearcher dirSearcher = new DirectorySearcher(dirEntry);
string filter = "mail";
string filterValue = "my.email@mycompany.com";
dirSearcher.Filter = string.Format("({0}={1})", filter, filterValue);
SortOption sortOption = new SortOption(filter, SortDirection.Ascending);
dirSearcher.Sort = sortOption;
dirSearcher.PropertiesToLoad.Add("uid");
dirSearcher.SearchScope = SearchScope.Subtree;
SearchResult result = dirSearcher.FindOne();
DirectoryEntry directEntry = result.GetDirectoryEntry();
Console.WriteLine("Result: {0}", directEntry.Properties["uid"].Value.ToString());
任何想法如何解决这个问题?
【问题讨论】:
-
这个 LDAP 是针对 Active Directory 还是针对其他 LDAP 目录?如果是其他:哪一个??
-
LDAP 路径看起来有点奇怪 - 我不确定 AD 是否支持
o=和c=之类的东西 - 这些通常用于 OpenLDAP 或 Novell eDirectory。
标签: c# exception active-directory ldap directoryentry