Код ниже получает мне пользователей в группе, но она возвращается "CN=johnson\,Tom,OU=Users,OU=Main,DC=company,DC=com"
получить имена пользователей в группу Active Directory с помощью .net
Я хочу просто вернуть имя и фамилию. Как я могу это сделать?
DirectoryEntry ou = new DirectoryEntry();
DirectorySearcher src = new DirectorySearcher();
src.Filter = ("(&(objectClass=group)(CN=Gname))");
SearchResult res = src.FindOne();
if (res != null)
{
DirectoryEntry deGroup = new DirectoryEntry(res.Path);
PropertyCollection pcoll = deGroup.Properties;
foreach (object obj in deGroup.Properties["member"])
{
ListBox1.Items.Add(obj.ToString());
}
}
Следующая не совсем ответ, просто предупреждение: обернуть DirectoryEntry, DirectorySearcher и особенно любые SearchResultCollections (например, от вызова [DirectorySearcher.FindAll] (HTTP : //msdn.microsoft.com/en-us/library/system.directoryservices.directorysearcher.findall.aspx)) в операторе using или try/finally с вызовом Dispose. SearchResultCollections нельзя собирать мусор. Я искал утечку памяти в течение нескольких дней после использования примера, который я нашел в Интернете, который ничего не утилизировал. Внимательно проверьте документацию по MS, чтобы узнать, какие классы участвуют в поиске Active Directory hav. –