【问题标题】:C# ActiveDirectory, how to add range to filterC# Active Directory,如何将范围添加到过滤器
【发布时间】:2012-09-05 13:27:23
【问题描述】:

我基本上是在尝试使用 DirectorySearcher 将我的结果过滤到一系列成员,但是这个过滤器不返回任何结果。

"(&(objectClass=user)(memberof=CN=Users,OU=myou,OU=base,OU=home,DC=gorge,DC=net)(member;range=0-1499))"

DirectoryEntry dEntryhighlevel = 
          new DirectoryEntry("LDAP://OU=base,OU=home,DC=gorge,DC=net");
DirectorySearcher dSeacher = 
          new DirectorySearcher(dEntryhighlevel);
dSeacher.Filter = 
        "(&(objectClass=user)
         (memberof=CN=Users,OU=myou,OU=base,OU=home,DC=gorge,DC=net)
         ("+attributeWithRange+"))";
dSeacher.PropertiesToLoad.Add(attributeWithRange);
dSeacher.PropertiesToLoad.Add("givenname");
dSeacher.PropertiesToLoad.Add("sn");
dSeacher.PropertiesToLoad.Add("samAccountName");
dSeacher.PropertiesToLoad.Add("mail");
dSeacher.PageSize = 1500;
SearchResultCollection resultCollection = resultCollection = dSeacher.FindAll();

这段代码在没有范围过滤器的情况下工作得很好。这里的任何帮助都会很棒。

【问题讨论】:

    标签: c# active-directory


    【解决方案1】:

    我认为您的问题可能是您试图将范围插入Filter 以及 插入PropertiesToLoad。如果您查看第一个 code example on this page,您会发现该范围仅被添加到 PropertiesToLoad 中,以用于 DirectorySearcher 类的实例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-08-04
      • 1970-01-01
      • 2020-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多