2012-03-08 2 views
0

Я реализую опрос dirSync для изменений в активном каталоге, используя ldap. Он отлично работает, но я хотел бы получить атрибут username («samaccountname»), связанный с объектом SearchResultEntry, в дополнение к изменениям, которые будут обнаружены.Как получить имя пользователя SearchResultEntry

ответ

1

Вы должны запросить атрибуты как часть запроса на поиск. Если желаемые атрибуты передаются на сервер как прошлое поискового запроса, и если сервер разрешает аутентификационное состояние соединения получать эти атрибуты, то эти атрибуты будут включены в результат поиска. Для получения дополнительной информации см. LDAP: Programming Practices и Using ldapsearch. Последнее относится к инструменту командной строки ldapsearch, но понятия действительны для любого языка.

1
SearchResult result; // this would've been defined elsewhere 
if(result != null) 
{ 
    DirectoryEntry entry = result.GetDirectoryEntry(); 
    string name = (string)entry["SAMAccountName"].Value; 
} 

Это позволит вам получить имя от пользователя и сохраняет его в названии и предполагает, что вы есть SEARCHRESULT названный результат уже заселенный из некоторого поиска в каталоге.

Редактировать: Я понял, что это не то, о чем вы просили, вы используете SearchResultEntry, а не DirectoryServices.SearchResult. Я оставлю это здесь на всякий случай, если это может помочь, но я приношу свои извинения за неправильное чтение исходного вопроса.

+0

thats ok thanks @Jetti – chloe

Смежные вопросы