Csharp/C Sharp by API/System.DirectoryServices/DirectoryEntries

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

DirectoryEntries.CommitChanges()

  

using System;
using System.DirectoryServices;
public class MainClass 
{
  public static int Main(string[] args)
  {
    DirectoryEntry MyObject = new DirectoryEntry();
    MyObject.Path = "LDAP://HMSRevenge/OU=Users,DC=Test,DC=com";
    DirectoryEntries users = MyObject.Children;
    DirectoryEntry NewUser = users.Add("New User", "user");
    NewUser.Properties["company"].Add("Your Corporation");
    NewUser.Properties["employeeID"].Add("01");
    NewUser.Properties["userPassword"].Add("YOurPassword");
    NewUser.rumitChanges();
    return 0;
  }
}


DirectoryEntries.Find(String value)

 
using System;
using System.DirectoryServices;
public class RemoveObject
{
   public static void Main()
   {
      DirectoryEntry de = new DirectoryEntry(
        "LDAP://192.168.1.100/ou=accounting, dc=ispnet1, dc=net",
         "cn=Administrator, dc=ispnet1, dc=net", "password",
         AuthenticationTypes.ServerBind);
      DirectoryEntries children = de.Children;
      try
      {
         DirectoryEntry badObject = children.Find("ou=auditing");
         children.Remove(badObject);
         de.rumitChanges();
         Console.WriteLine("the object was removed");
      } catch (Exception)
      {
         Console.WriteLine("the object was not found");
      }
   }
}


DirectoryEntries.Remove(DirectoryEntry D)

 
using System;
using System.DirectoryServices;
public class MainClass
{
  public static int Main(string[] args)
  {
    DirectoryEntry MyObject = new DirectoryEntry();
    MyObject.Path = "LDAP://HMSRevenge/OU=Users,DC=Test,DC=com";
    DirectoryEntries users = MyObject.Children;
    foreach(DirectoryEntry D in users)
    {
      if(D.Properties["email"].Value.ToString() == "tom")
      {
        users.Remove(D);
      }
    }
    
    MyObject.rumitChanges();
    return 0;
  }
}