使用示例查询应用多个“或”筛选器
本文关键字:筛选 查询 应用 | 更新日期: 2023-09-27 18:33:35
我正在尝试使用示例查询从活动目录中检索一组记录。此片段将找到名为"John Smith"的任何记录:
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>;
但我想应用这些过滤器,以便我可以将任何记录与"史密斯"的姓氏或"约翰"的名字相匹配,例如"玛丽史密斯"、"约翰布朗"。是否可以使用示例查询 - 而无需运行多个搜索?我找不到任何记录在案的例子。
你不能用QBE做任何类型的OR搜索(按示例查询(。
您可以使用所需的所有 OR 和 AND 编写 LDAP 查询,分别运行该查询,取回可分辨名称,然后查找所有匹配的用户上下文对象... 我知道,这很糟糕。
在建立帐户管理结构时,有很多领域没有给予太多考虑。