排除c#中activedirectory的PrincipalSearcher QueryFilter中的空结果

本文关键字:结果 QueryFilter PrincipalSearcher activedirectory 排除 | 更新日期: 2023-09-27 17:50:15

尝试在Active Directory中搜索用户的非空描述(意味着他们有一个职位名称),如下面第4行所示,但我得到一个错误,我不能使用排除!

有其他方法的建议吗?

PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
UserPrincipal qbeUser = new UserPrincipal(ctx);
PrincipalSearcher srch = new PrincipalSearcher(qbeUser);
var example = new UserPrincipal(ctx) { Description != null };

排除c#中activedirectory的PrincipalSearcher QueryFilter中的空结果

我会尝试这样做:

using (PrincipalContext ctx = new PrincipalContext(ContextType.Domain))
{
    UserPrincipal qbeUser = new UserPrincipal(ctx);
    qbeUser.Description = "*";   // something, anything - just not empty/NULL
    PrincipalSearcher srch = new PrincipalSearcher(qbeUser);
     ......
}

这对你有用吗?基本上,只需在qbeUser上定义属性,并使用*作为通配符表示您希望用户在Description属性中具有某些内容-某些内容,任何内容-而不是没有