//GetUsers
DirectorySearcher searcher = new DirectorySearcher(de);
searcher.Filter = "(objectClass=user)";
searcher.SearchScope = SearchScope.Subtree;
SearchResultCollection results = searcher.FindAll();
UserCollection users = new UserCollection();
users.Users = new User[results.Count];
int index = 0;
foreach (SearchResult result in results)
{
DirectoryEntry directoryEntry = result.GetDirectoryEntry();
users.Users[index] = new User();
users.Users[index].Email = (directoryEntry.Properties["Mail"].Count >= 1) ? directoryEntry.Properties["Mail"][0].ToString() : "";
string DomainName = "";
string distinguishedName = (directoryEntry.Properties["distinguishedName"].Count >= 1) ? directoryEntry.Properties["distinguishedName"][0].ToString() : "";
string[] TempStr = distinguishedName.Split(',');
foreach (string Str in TempStr)
{
if (Str.Contains("DC="))
{
DomainName = Str.Replace("DC=", "");
break;
}
}
string UserName = (directoryEntry.Properties["sAMAccountName"].Count >= 1) ? directoryEntry.Properties["sAMAccountName"][0].ToString() : "";
users.Users[index].UserName = (DomainName != "") ? DomainName + "\\" + UserName : UserName;
users.Users[index].FirstName = (directoryEntry.Properties["givenName"].Count >= 1) ? directoryEntry.Properties["givenName"][0].ToString() : "";
users.Users[index].LastName = (directoryEntry.Properties["Sn"].Count >= 1) ? directoryEntry.Properties["Sn"][0].ToString() : "";
users.Users[index].DisplayName = (directoryEntry.Properties["displayName"].Count >= 1) ? directoryEntry.Properties["displayName"][0].ToString() : "";
users.Users[index].Description = (directoryEntry.Properties["description"].Count >= 1) ? directoryEntry.Properties["description"][0].ToString() : "";
index++;
}













Leave a Reply