我正在尝试从活动目录中获取用户名。我使用下面的代码,它给了我一些人的用户名,但它不是全部。有缺少的名字。我错了什么?我是Mvc和ldap的新人。有人可以帮帮我吗?
public ActionResult GetUserList()
{
DirectoryEntry entry = new DirectoryEntry("LDAP://domain.com", "username", "password");
DirectorySearcher searcher;
SearchResultCollection results;
searcher = new DirectorySearcher(entry);
searcher.Filter = "(&(objectClass=user)(displayname=*))";
searcher.SearchScope = SearchScope.Subtree;
List<string> list= new List<string>();
using (searcher)
{
results = searcher.FindAll();
foreach (SearchResult result in results)
{
string searchOK = result.Properties["displayname"][0].ToString();
list.Add(searchOK);
}
}
return View(list);
}
答案 0 :(得分:0)
更改
searcher.Filter = "(&(objectClass=user)(displayname=*))";
到
searcher.Filter = "(objectClass=user)";
并非每个用户都必须拥有显示名称。 另请阅读samAccountName属性