public static List<string> GetUsersFromAD()
{
List<string> retVal=new List<string>();
try
{
ContextType contextType = ContextType.Domain;
string strName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
string domainName = strName.Split('\\')[0];
using (PrincipalContext ctx = new PrincipalContext(contextType, domainName))
{
var searchPrinciple = new UserPrincipal(ctx);
//searchPrinciple.EmailAddress = "*";
searchPrinciple.Enabled = true;
System.DirectoryServices.AccountManagement.PrincipalSearcher search = new PrincipalSearcher();
search.QueryFilter = searchPrinciple;
PrincipalSearchResult<Principal> results = search.FindAll();
StringBuilder sb = new StringBuilder();
foreach (UserPrincipal userPrincipal in results)
{
retVal.Add(domainName + "\\" + userPrincipal.SamAccountName);
}
}
}
catch (Exception ex)
{
Errors.Log(ex);
}
return retVal;
}