사용자 조직의 Active Directory를 검색하려고합니다. firstName을 또는 성 또는 표시 이름이 특정 문자열 값과 일치하는 경우 이름, 성 및 표시 이름에 따라 Active Directory에서 사용자 검색
, 그것은 사용자를 반환해야합니다.내 코드 :
// create your domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
UserPrincipal qbeUser = new UserPrincipal(ctx);
qbeUser.GivenName = "Ramesh*";
// qbeUser.Surname = "Ramesh*";
// qbeUser.DisplayName= "Ramesh*";
PrincipalSearcher srch = new PrincipalSearcher(qbeUser);
// find all matches
foreach(var found in srch.FindAll())
{
//
}
문제는 나는 단지 하나 개의 필터로 검색 할 수 있어요 때문이다.
필터를 AND 할 수는 있지만 OR는 사용할 수 없습니다. 어떤 솔루션을 사용할 수 있습니까?
[이 문제에 대한 가능한 해결책은 다음을 참조하십시오.] (http://stackoverflow.com/questions/3195124/ambiguous-name-resolution-anr-ma-equivalent-in-net-3-5-directoryservices-ac) -'UserPrincipal'의 확장 성을 사용하여 여러 개의 이름 관련 속성에서 검색을 허용하는'anr' 속성 (모호한 이름 해석)에 접근합니다. –
@marc_s : 해결책을 가져 주셔서 감사합니다. 제대로 작동하고 있습니다. 답변으로 게시 할 수 있습니까? 내가 받아 들일 수 있도록? –