namespace ADsample
{
/// <summary>
/// Summary description for Class1.
/// </summary>
class Class1
{
static void Main(string[] args)
{
//
// TODO: Add code to start application here
//
GetAllOU();
Console.ReadLine();
}
//獲取目錄中需要的組織單元(OU)
public static void GetAllOU()
{
DirectoryEntry entry = new DirectoryEntry("LDAP://szcs");
DirectorySearcher mySearcher = new DirectorySearcher(entry);
mySearcher.Filter = ("(objectClass=organizationalUnit)");
foreach(SearchResult resEnt in mySearcher.FindAll())
{
Console.Write(resEnt.GetDirectoryEntry().Name.ToString());
Console.WriteLine("/t"resEnt.GetDirectoryEntry().Name.ToString());
}//end foreach
}//end GetAllOU
}//end class
}//end namespace
程序註解:
ü 程序開始,實例化了一個DirectoryEntry類,其構造函數的參數是"LDAP://szcs",這裏szcs是域名。
ü 然後又實例化了一個DirectorySearcher類,用來查詢szcs域中活動目錄中的信息,其構造函數的參數是一個DirectoryEntry類的實例對象。
ü DirectorySearcher類的Filter屬性用來設置查詢的過濾條件,一般有以下三種:
1. objectClass=organizationalUnit 查詢條件是所有的組織單元(OU)
2. objectClass=group 查詢條件是所有的組(GROUP)
3. objectClass=user 查詢條件是所有的用戶(USER)
當然還可以設置其他的過濾條件,而且可以使用邏輯運算符,詳情請參加MSDN
ü DirectorySearcher類的Findall方法用來遞歸的查找所有符合條件的對象。其返回結果
是一個SearchResult類型的對象,這是一個集合類型。
ü 用Foreach語句訪問集合中的所有對象,獲得對象的信息。
c#遍歷活動目錄
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.