c#遍历活动目录

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语句访问集合中的所有对象,获得对象的信息。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值