Mailing List



NerdyHearn - Blog

<< Back To All Blogs

Updating an LDAP Property in C#

Thursday, June 11th, 2009

C# is very powerful for working with LDAP and Active Directory. You are often presented with a situation in which you want to update the property of a value from an LDAP record, and I figured I would share with doing so as there are really two cases which have to be considered: the case with a single-valued attribute, and the case with a multi-valued (array) attribute.

Without further ado, I present to you the code:

DirectoryEntry entry = new DirectoryEntry("LDAP://DC=mydomain,DC=com");
DirectorySearcher searcher = new DirectorySearcher(entry);

// This will find the directory entry by a distinguished name, although you could use any filter here
searcher.Filter = "(&(distinguishedName=" + DN + "))";

// Only find the first matching record
SearchResult result = searcher.FindOne();
if (result != null)
DirectoryEntry updater = new DirectoryEntry();

// Set the path to the DN found by the searcher
updater.Path = result.Path;

// Username and password with write access
updater.Username = "UsernameWithWriteAccess";
updater.Password = "PasswordForUsername";

// This will update a single-valued property
updater.Properties["myproperties"].Value = "something here";

// This will add a value to a multi-valued property

// Commit the changes

Pretty simple, but very useful and very powerful.

LDAPin' Tom Out.



Related Blogs

Writing console output from a Windows form in C#
Enumerating the values of an enum in C#
Reading A Database Schema in SQLite with C#
Retrieving the SID of a user or group account using the Win32 SDK and C#
Generic Method for Loading Interfaces in C# (For a Plugin System)


Lance Robinson said on Thursday, June 11th, 2009 @ 10:29 AM

So much easier with IPWorks its not even funny.

Add A Comment



Email Address: (not public, used to send notifications on further comments)


Enter the text above, except for the 1st and last character:

NerdyHearn - Latest tech news relating to C#, ASP.NET, SharePoint, PHP, general development, and more. SaveMySerials - Protect yourself from theft, fire, natural disasters and more by recording your serial numbers