Поскольку вы работаете в .NET 3.5 и выше, вам следует проверить пространство имен System.DirectoryServices.AccountManagement
(S.DS.AM).Прочитайте все об этом здесь:
По сути, вы можете определить контекст домена и легко находить пользователей и / или группы в AD:
// set up domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
// find a user
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, "SomeUserName");
if(user != null)
{
// do something here....
}
// find the group in question
GroupPrincipal group = GroupPrincipal.FindByIdentity(ctx, "YourGroupNameHere");
// if found....
if (group != null)
{
// iterate over members
foreach (Principal p in group.GetMembers())
{
Console.WriteLine("{0}: {1}", p.StructuralObjectClass, p.DisplayName);
// do whatever you need to do to those members
}
}
Новый S.DS.AM позволяет действительно легкопоиграйтесь с пользователями и группами в AD!
Я не уверен на 100%, что вы хотите сделать в вашем конкретном случае ... UserPrincipal
имеет свойство EmployeeId
- это то, что вы хотитеискать?