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

基になる DirectoryEntry/DirectorySearcher クラスを使用していない限り、UserPrincipal を使用する必要があります。

.Members の代わりに .GetMembers() を使用する必要があります。その後、次のようなことができます。

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 に答える