У меня есть эта небольшая проблема.Active Directory - получить всех пользователей Принадлежность к менеджеру
Я хочу, чтобы все пользователи имели тот же менеджер.
В настоящее время у меня есть код, который может это сделать, но проблема в том, что он получает ВСЕ пользователей. Затем я просматриваю всех пользователей и сопоставляю их с менеджером. Проблема в том, что это займет слишком много времени, если, скажем, 100 000 пользователей.
Мой текущий код:
UserPrincipal managerP = UserPrincipal.FindByIdentity(GetPrincipalContext(), IdentityType.SamAccountName, sAMManager);
if (managerP != null)
{
using (UserPrincipal user = new UserPrincipal(GetPrincipalContext()))
{
using (PrincipalSearcher search = new PrincipalSearcher(user))
{
search.QueryFilter = user;
foreach (UserPrincipal userP in search.FindAll())
{
if (managerP.SamAccountName.ToLower() == sAMManager.ToLower())
{
//Add 'userP' to list.
}
}
}
}
}
Как я могу изменить это, так что я могу получить все пользователи, принадлежащие к менеджеру, вместо того, чтобы их все первым?
Спасибо :), проблема решена :) –