0

我正在使用 GroupPrincipal 查找属于 AD 组成员的用户。

GroupPrincipal group = GroupPrincipal.FindByIdentity(pc, "Advisors");

我需要从此查找中获取 EmployeeID 字段,但我相信这只有使用 UserPrincipal 才有可能。

var members = group.Members.Select(x => new DomainContext() { EmployeeID = x.EmployeeId, FullName = x.DisplayName }).ToList();

有谁知道解决这个问题的方法?

4

1 回答 1

1

您必须使用 UserPrincipal ,除非您使用底层的 DirectoryEntry/DirectorySearcher 类。

您应该使用 .GetMembers() 而不是 .Members 然后您可以执行以下操作:

var userMembers = group.GetMembers().OfType<UserPrincipal>();
foreach( var member in userMembers) {
    string empid = member.EmployeeId; //do something with the EmployeeId
}
于 2012-11-28T16:12:54.700 回答