DirectorySearcher.AttributeScopeQuery Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the LDAP display name of the distinguished name attribute to search in. Only one attribute can be used for this type of search.

Namespace:   System.DirectoryServices
Assembly:  System.DirectoryServices (in System.DirectoryServices.dll)

[TypeConverterAttribute("System.Diagnostics.Design.StringValueConverter, System.Design, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string AttributeScopeQuery { get; set; }

Property Value

Type: System.String

The LDAP display name of the attribute to perform the search against, or an empty string of no attribute scope query is set.

Exception Condition

The SearchScope property is set to a value other than Base.

The attribute that this property is set to must be a distinguished name attribute, such as member or managedBy. The attribute can be either single or multi-valued. For more information, see the adschema topics "Member" and "Managed-By" in the MSDN Library at

The search is performed against the objects that are identified by the distinguished name that is specified in the attribute of the base object. For example, if the base object is an adschema group class and the AttributeScopeQuery is set to "member," then the search will be performed against all objects that are members of the group. For more information, see the adschema "Group" class topic in the MSDN Library at

When the AttributeScopeQuery property is used, the SearchScope property must be set to Base. If the SearchScope property is set to any other value, setting the AttributeScopeQuery property will throw an ArgumentException.

For more information, see the "Performing an Attribute Scope Query" topic in the MSDN Library at

The following example shows how to use the AttributeScopeQuery property with the member attribute to get the members of a group. It then prints out the first and last names of the members and their telephone numbers.

using System.DirectoryServices;
DirectoryEntry group = new DirectoryEntry("LDAP://CN=MyGroup, …");
DirectorySearcher src = new DirectorySearcher(group "(&(objectClass=user)(objectCategory=Person))");
src.AttributeScopedQuery = "member";
foreach(SearchResult res in src.FindAll())

.NET Framework
Available since 2.0
Return to top