Ajax 如何使用LIKE在Active Directory中搜索?

Ajax 如何使用LIKE在Active Directory中搜索?,ajax,search,active-directory,jquery-autocomplete,Ajax,Search,Active Directory,Jquery Autocomplete,我有自动编译文本框。我需要使用Ajax从广告中填充samAccountName,并在广告中搜索时使用LIKE 这是我的代码,但我有错误: List<string> result = new List<string>(); DirectoryEntry domain1 = default(DirectoryEntry); DirectorySearcher searcher = default(DirectorySearcher); domain1

我有自动编译文本框。我需要使用Ajax从广告中填充samAccountName,并在广告中搜索时使用LIKE

这是我的代码,但我有错误:

 List<string> result = new List<string>();
    DirectoryEntry domain1 = default(DirectoryEntry);
    DirectorySearcher searcher = default(DirectorySearcher);
    domain1 = new DirectoryEntry();
    searcher = new DirectorySearcher("(&(samAccountType=805306368)(!(userAccountControl:1.2.840.113556.1.4.803:=2))(samAccountName LIKE N'%" + username + "%'))");
    searcher.SearchRoot = domain1;
    searcher.SearchScope = SearchScope.Subtree;
    DataTable dtfill = new DataTable();
    dtfill.Columns.Add("UserName");

    using (System.DirectoryServices.SearchResultCollection userlist = searcher.FindAll())
    {
        for (int i = 0; i <= userlist.Count - 1; i++)
result.Add(Convert.ToString(userlist[i].GetDirectoryEntry().Properties["samAccountName"].Value).ToLower());}
列表结果=新列表();
DirectoryEntry域1=默认值(DirectoryEntry);
DirectorySearcher search=默认值(DirectorySearcher);
domain1=新目录条目();
searcher=newdirectorysearcher(&(samAccountType=805306368)(!(userAccountControl:1.2.840.113556.1.4.803:=2))(samAccountName类似于N“%”+username+“%”);
searcher.SearchRoot=domain1;
searcher.SearchScope=SearchScope.Subtree;
DataTable dtfill=新DataTable();
dtfill.Columns.Add(“用户名”);
使用(System.DirectoryServices.SearchResultCollection userlist=searcher.FindAll())
{
对于(int i=0;i
本页简要概述了搜索的语法

searcher = new DirectorySearcher(string.Format("(&(samAccountType=805306368)(!(userAccountControl:1.2.840.113556.1.4.803:=2))(samAccountName=*{0}*))", username));