如何从AD的部门中拉出所有员工姓名并放置在下拉列表中
本文关键字:下拉列表 AD | 更新日期: 2023-09-27 17:54:27
帮助,我想知道如何从部门获得所有员工名称,然后将其绑定到下拉列表中?这里是我的代码找到一个记录,但我想要所有的结果?
string connection = ConfigurationManager.ConnectionStrings["ADConnection"].ToString();
DirectorySearcher dssearch = new DirectorySearcher(connection);
dssearch.Filter = "(sAMAccountName=" + current_User + ")";
SearchResult sresult = dssearch.FindOne();
DirectoryEntry dsresult = sresult.GetDirectoryEntry();
你需要调用FindAll()而不是FindOne(),因为你想要所有员工的名字,并使用SearchResultCollection而不是SearchResult所以你可以保持多于一个记录,然后你可以绑定结果到下拉使用foreach:
c#后台代码:string connection = ConfigurationManager.ConnectionStrings["ADConnection"].ToString();
DirectorySearcher dssearch = new DirectorySearcher(connection);
dssearch.Filter = "(&(objectCategory=Person))";
dssearch.Filter = "(sAMAccountName=" + current_User + ")";
SearchResultCollection searchResult = dssearch.FindAll();
foreach (SearchResult srUSers in searchResult)
{
DirectoryEntry de = srUsers.GetDirectoryEntry();
dropDownList1.Items.Add(de.Name.ToString());
}