2013-10-02 7 views
0

예제로 쿼리를 사용하여 Active Directory에서 레코드 집합을 검색하려고합니다. 이 조각은 "존 스미스"의 이름을 가진 레코드를 찾을 수 있습니다 :예제로 쿼리를 사용하여 여러 "또는"필터 적용

PrincipalContext context = new PrincipalContext(ContextType.Domain, contextName); 
User filter = new User(context); 
var users = new List<User>();    
filter.LastName = "Smith"; 
filter.GivenName = "John"; 
PrincipalSearchResult<Principal> matches = null;    
PrincipalSearcher searcher = new PrincipalSearcher(filter); 
matches = searcher.FindAll() as PrincipalSearchResult<Principal>; 

을하지만 난 또는 주어진 이름 "스미스"의 마지막 이름으로 어떤 기록을 일치시킬 수 있도록 이러한 필터를 적용 할 "존", 예. "메리 스미스", "존 브라운". 여러 검색어를 실행하지 않고도 검색어 별 예제를 사용하여이 작업을 수행 할 수 있습니까? 문서화 된 예제를 찾을 수 없었습니다.

답변

2

QBE를 사용하여 어떤 유형의 OR 검색도 수행 할 수 없습니다 (Query by Example).

당신 수술실의와와 당신이 원하는 모든 일치하는 정보 UserContext 객체를 검색 한 후, 따로 쿼리를 실행 고유 이름을 다시 얻고,의 ... 나는 알고있다, 그것은 짜증 모두와 함께 LDAP 쿼리를 작성할 수 있습니다.

AccountManagement 구조를 조합 할 때 많은 고려 사항이 제시되지 않은 영역이 많이 있습니다.