Я столкнулся с проблемой, когда запуск 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, но не получаю результатов.Пользователь существует, и я могу получить запись, если потяну DirectoryEntry
, но мне не нужна полная запись, так как она слишком медленная для обработки.Я должен быть в состоянии сузить поля, используя DirectorySearcher
, чтобы ускорить эту вещь.Есть идеи, почему я получаю гусиное яйцо при поиске в каталоге у некоторых пользователей, но не у других?