2013-05-16 60 views

回答

0

你只需要遍歷你的GUID列表,獲取每個用戶:

public List<UserPrincipal> FindAllUsers(List<Guid> allGuids) 
{ 
    List<UserPrincipal> result = new List<UserPrincipal>(); 

    // set up domain context 
    using (PrincipalContext ctx = new PrincipalContext(ContextType.Domain)) 
    { 
     foreach(Guid userGuid in allGuids) 
     { 
      // find a user 
      UserPrincipal user = UserPrincipal.FindByIdentity(ctx, userGuid); 

      if(user != null) 
      { 
       result.Add(user); 
      } 
     } 
    } 

    return result; 
} 
+1

+1注意,LDAP查詢可以是非常慢的。做好準備,並提前考慮一個好的緩存策略。 – Yuck

+1

有沒有什麼辦法可以通過 – user1786107

+0

@ user1786107傳遞所有的guid:你可以傳入一個**的Guid **列表到你自己的方法 - 但是沒有辦法在Active Directory中一次搜索一大堆Guid 。 –

相關問題