Не может указать, какие атрибуты возвращать при запросе магазина LDAP

StackOverflow https://stackoverflow.com/questions/3919732

Вопрос

Я использую тип dieforyservices.protocols.searchRequest, чтобы сделать запрос против магазина Opends для получения некоторых записей. Я хочу иметь возможность контролировать, какие атрибуты возвращаются для записей в ответе, и подумал, что свойство «атрибуты» сделает это. Однако у этого свойства нет сеттера, поэтому я не могу сделать что-то вроде этого:-

SearchRequest searchRequest = new SearchRequest
                                            {
                                                DistinguishedName = hubTable,
                                                Filter = ldapFilter,
                                                Scope = SearchScope.Subtree,                                                
                                                Attributes = new StringCollection{"Id", "File"}
                                            };
            //run the query and get the results
            SearchResponse results = connection.SendRequest(searchRequest) as SearchResponse;

Может ли кто -нибудь направить меня к тому, что я должен сделать, чтобы отфильтровать запрос, чтобы вернуть записи только с указанными атрибутами, а не всеми из них.

Это было полезно?

Решение

По иронии судьбы это сработало:-

SearchRequest searchRequest = new SearchRequest(hubTable, ldapFilter, SearchScope.Subtree, new[] { "AppId", "File" });

Другие советы

Есть ли причина, по которой вы используете SearchResuest? В любом случае вы можете использовать класс DirectorySearcher http://msdn.microsoft.com/en-us/library/system.directoryservices.directorysearcher.aspx Чтобы поискать записи. Вот пример поиска 1 результата http://msdn.microsoft.com/en-us/library/system.directoryservices.searchresult.aspx. Анкет Используйте метод Findall, чтобы получить все результаты.

Я подозреваю, что вам понадобится другой фильтр.

Я уверен, что ты ldapfilter имеет несколько критериев. Вам нужно, и это (с &) включить (&(Id=*)(File=*)) Чтобы получить результаты, которые вы ищете.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top