2017-06-06 5 views
0

アクティブなディレクトリからユーザー名を取得しようとしています。私は以下のコードを使用し、それは私にいくつかの人々のためのユーザーネームを与えますが、それはすべてではありません。名前がありません。何が間違っていますか?私はMvcとldapで新しいです。誰でも私を助けることができますか?MVCのアクティブディレクトリからユーザーリストを取得する方法は?

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

変更

searcher.Filter = "(&(objectClass=user)(displayname=*))"; 

searcher.Filter = "(objectClass=user)"; 

に、すべてのユーザーが表示名を持っていなければならないわけではありません。 samAccountNameプロパティも参照してください

関連する問題