При использовании System.DirecoryServices.DirectorySearcher, как вы можете определить, произошел ли ClientTimeOut или что поиск, естественно, возвратил пустой SearchResultCollection?Как определить ClientTimeout при использовании DirectorySearcher
дал следующий фрагмент
using (var searcher = new DirectorySearcher(adRoot))
{
searcher.Filter = "SomeFilter";
searcher.PropertiesToLoad.Add("givenname");
searcher.PropertiesToLoad.Add("sn");
searcher.PropertiesToLoad.Add("department");
searcher.PropertiesToLoad.Add("samaccountname");
searcher.ClientTimeout = TimeSpan.FromSeconds(10);
using (var results = searcher.FindAll())
{
//haldle results
}
}
}
Спасибо за ваш ответ. ClientTimeout возникает, если поиск занимает более 10 секунд, даже если свойство Async не установлено. Если DirectorySearcher «прерывает» поиск из-за достижения клиента timeout, мы хотели бы повторить поиск против других контроллеров домена в сети. Кажется, один из контроллеров домена работает намного медленнее, чем остальные, и нам нужно «провалиться» на другой контроллер, если превышено десять секунд – flalar