DirectoryEntry是C#中用于表示Active Directory(AD)中的一个目录项的类。它提供了一组方法和属性,用于与AD进行交互,如创建、删除、修改目录项等。
以下是DirectoryEntry类的一些常用方法和属性:
构造函数:DirectoryEntry类有多个构造函数,用于实例化目录项对象。其中最常用的是使用目录项的路径进行构造,例如:DirectoryEntry entry = new DirectoryEntry(“LDAP://cn=user,dc=domain,dc=com”);
Path属性:获取或设置目录项的LDAP路径。
Children属性:获取目录项的子目录项集合。
Parent属性:获取目录项的父目录项。
Properties属性:获取目录项的属性集合。
Invoke方法:调用目录项的方法。
DeleteTree方法:删除目录项及其下的所有子目录项。
CommitChanges方法:将对目录项的修改保存到AD中。
RefreshCache方法:刷新目录项的缓存。
NativeObject属性:获取目录项的原生COM对象。
使用DirectoryEntry类可以进行一系列操作,如创建用户、删除用户、修改用户属性等。下面是一个示例:
DirectoryEntry entry = new DirectoryEntry("LDAP://cn=user,dc=domain,dc=com");
entry.Properties["givenName"].Value = "John";
entry.Properties["sn"].Value = "Doe";
entry.CommitChanges();
以上代码创建了一个表示AD中用户的目录项,并设置了用户的名和姓,然后调用CommitChanges方法将修改保存到AD中。
需要注意的是,使用DirectoryEntry类需要引用System.DirectoryServices命名空间。