【发布时间】:2012-03-12 22:56:36
【问题描述】:
我遇到了一个问题,即运行 DirectorySearcher 并不总是成功返回结果。例如,我将使用以下方法发送经理的 GUID 以转换字符串 (NativeGuid):
public static string Guid2OctetString(string objectGuid)
{
System.Guid guid = new Guid(objectGuid);
byte[] byteGuid = guid.ToByteArray();
string queryGuid = "";
foreach (byte b in byteGuid)
{
queryGuid += @"\" + b.ToString("x2");
}
return queryGuid;
}
据说这会将 guid 字符串转换为 Active Directory 可用的内容。当我通过这个运行我的经理的NativeGuid 时,我得到了一个结果。但是在应用程序的下一步中,我以相同的方式运行了一个 directReports 的 Guid,但没有得到任何结果。用户确实存在,如果我拉动DirectoryEntry,我可以获得条目,但我不想要完整的条目,因为它处理起来太慢了。我需要能够使用DirectorySearcher 来缩小字段范围以加快速度。任何想法为什么我在某些用户的目录搜索中得到鹅蛋而不是其他用户?
【问题讨论】:
标签: c# .net active-directory directoryservices