我System.DirectoryServices.AccountManagement
用来查询 Active Directory 以获取单个用户信息
public UserInfo FindOne(string samUserName)
{
using (var ctx = new PrincipalContext(ContextType.Domain, "domain.com", "Bob", "pwd"))
{
using (UserPrincipal user = UserPrincipal.FindByIdentity(ctx, samUserName))
{
if (user != null)
{
// get info about Alice into userInfo
return userInfo;
}
}
}
return null;
}
因此,如果我使用var aliceInfo = search.FindOne("alice");
,我会从目录中获取信息。现在我需要在给定多个用户登录名的情况下搜索一个目录(1000 多个用户),例如
var userInfos = search.FindMany(/* list of names: alice, jay, harry*/);
如何实现以下方法?
public List<UserInfo> FindMany(List<string> samUserNames)
{
...
}