1

DirectoryServices.Protocols.SearchRequestタイプを使用して、OpenDSストアに対していくつかのエントリを取得するように要求します。応答のエントリに対して返される属性を制御できるようにしたいので、「Attributes」プロパティでそれができると思いました。ただし、そのプロパティにはセッターがないため、次のようなことはできません。-

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;

誰かが私に、指定された属性を持つエントリのみを返し、すべてではないエントリを返すようにリクエストをフィルタリングするために何をすべきかを指示できますか?

4

3 に答える 3

1

皮肉なことに、これはうまくいきました:-

SearchRequest searchRequest = new SearchRequest(hubTable, ldapFilter, SearchScope.Subtree, new[] { "AppId", "File" });
于 2010-10-13T17:25:46.180 に答える
0

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メソッドを使用して、すべての結果を取得します。

于 2010-10-12T23:24:54.843 に答える
0

別のフィルターが必要になると思います。

ldapfilterあなたにはいくつかの基準があると確信しています。(&(Id=*)(File=*))探している結果を得るには、AND を (& を使用して) 含める必要があります。

于 2010-10-13T13:35:16.187 に答える