2013-11-24 192 views
0

我試圖從Active Directory獲取主目錄的屬性值「主目錄」屬性..從Active Directory獲取

我用下面的代碼:

public static void GetExchangeServerByWwidLdap(string wwid) 
{ 
    var exchange = string.Empty; 

    using (var ds = new DirectorySearcher()) 
    { 
     ds.SearchRoot = new DirectoryEntry("GC:something"); 
     ds.SearchScope = SearchScope.Subtree; 

     //construct search filter 
     string filter = "(&(objectclass=user)(objectcategory=person)"; 
     filter += "(employeeid=" + wwid + "))"; 
     ds.Filter = filter; 

     string[] requiredProperties = new string[] { "homeDirectory", "homemta" }; 

     foreach (String property in requiredProperties) 
      ds.PropertiesToLoad.Add(property); 

     SearchResult result = ds.FindOne(); 
    }  
} 

當我檢查result對象數據,我只看到2個值:「homemta」和「adspath」。 「homeDirectory」值在哪裏?

我進入AD網站和搜索相同的用戶相同的價值觀 - 通過網站,我可以看到我的所有搜索,所以我假設我的代碼問題的地方的數據。

我在做什麼錯?

回答

0

你正在嘗試從全局編錄homeDirectory的。

It’s not there.

你可以如通過ADsPath屬性(即「LDAP:// ...」字符串)綁定到用戶,然後查詢該用戶的homeDirectory屬性。

或者,如果你只有一個域,你可以把該領域,而不是搜索的GC內進行搜索。在這種情況下,您將能夠檢索所有您想要的屬性。

相關問題