DirectorySearcher Class
Performs queries against Active Directory Domain Services.
Assembly: System.DirectoryServices (in System.DirectoryServices.dll)
System.MarshalByRefObject
System.ComponentModel.Component
System.DirectoryServices.DirectorySearcher
| Name | Description | |
|---|---|---|
![]() | DirectorySearcher() | Initializes a new instance of the DirectorySearcher class with default values. |
![]() | DirectorySearcher(DirectoryEntry) | Initializes a new instance of the DirectorySearcher class using the specified search root. |
![]() | DirectorySearcher(DirectoryEntry, String) | Initializes a new instance of the DirectorySearcher class with the specified search root and search filter. |
![]() | DirectorySearcher(DirectoryEntry, String, String()) | Initializes a new instance of the DirectorySearcher class with the specified search root, search filter, and properties to retrieve.. |
![]() | DirectorySearcher(DirectoryEntry, String, String(), SearchScope) | Initializes a new instance of the DirectorySearcher class with the specified search root, search filter, properties to retrieve, and search scope. |
![]() | DirectorySearcher(String) | Initializes a new instance of the DirectorySearcher class with the specified search filter. |
![]() | DirectorySearcher(String, String()) | Initializes a new instance of the DirectorySearcher class with the specified search filter and properties to retrieve. |
![]() | DirectorySearcher(String, String(), SearchScope) | Initializes a new instance of the DirectorySearcher class with the specified search filter, properties to retrieve, and search scope. |
| Name | Description | |
|---|---|---|
![]() | Asynchronous | Gets or sets a value that indicates if the search is performed asynchronously. |
![]() | AttributeScopeQuery | 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. |
![]() | CacheResults | Gets or sets a value indicating whether the result is cached on the client computer. |
![]() | CanRaiseEvents | Gets a value indicating whether the component can raise an event.(Inherited from Component.) |
![]() | ClientTimeout | Gets or sets the maximum amount of time that the client waits for the server to return results. If the server does not respond within this time, the search is aborted and no results are returned. |
![]() | Container | Gets the IContainer that contains the Component.(Inherited from Component.) |
![]() | DerefAlias | Gets or sets a value indicating how the aliases of objects that are found during a search should be resolved. |
![]() | DesignMode | |
![]() | DirectorySynchronization | Gets or sets an object that represents the directory synchronization control to use with the search. |
![]() | Events | |
![]() | ExtendedDN | Gets or sets a value that indicates the format of the distinguished names. |
![]() | Filter | Gets or sets a value indicating the Lightweight Directory Access Protocol (LDAP) format filter string. |
![]() | PageSize | Gets or sets a value indicating the page size in a paged search. |
![]() | PropertiesToLoad | Gets a value indicating the list of properties to retrieve during the search. |
![]() | PropertyNamesOnly | Gets or sets a value indicating whether the search retrieves only the names of attributes to which values have been assigned. |
![]() | ReferralChasing | Gets or sets a value indicating how referrals are chased. |
![]() | SearchRoot | Gets or sets a value indicating the node in the Active Directory Domain Services hierarchy where the search starts. |
![]() | SearchScope | Gets or sets a value indicating the scope of the search that is observed by the server. |
![]() | SecurityMasks | Gets or sets a value indicating which security access information for the specified attributes should be returned by the search. |
![]() | ServerPageTimeLimit | Gets or sets a value indicating the maximum amount of time the server should search for an individual page of results. This is not the same as the time limit for the entire search. |
![]() | ServerTimeLimit | The ServerTimeLimit property gets or sets a value indicating the maximum amount of time the server spends searching. If the time limit is reached, only entries that are found up to that point are returned. |
![]() | Site | |
![]() | SizeLimit | Gets or sets a value indicating the maximum number of objects that the server returns in a search. |
![]() | Sort | Gets or sets a value indicating the property on which the results are sorted. |
![]() | Tombstone | Gets or sets a value indicating whether the search should also return deleted objects that match the search filter. |
![]() | VirtualListView | Gets or sets a value indicating the virtual list view options for the search. |
| Name | Description | |
|---|---|---|
![]() | CreateObjRef(Type) | Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.(Inherited from MarshalByRefObject.) |
![]() | Dispose() | |
![]() | Dispose(Boolean) | Releases the managed resources that are used by the DirectorySearcher object and, optionally, releases unmanaged resources.(Overrides Component.Dispose(Boolean).) |
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | |
![]() | FindAll() | Executes the search and returns a collection of the entries that are found. |
![]() | FindOne() | Executes the search and returns only the first entry that is found. |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetLifetimeService() | Retrieves the current lifetime service object that controls the lifetime policy for this instance.(Inherited from MarshalByRefObject.) |
![]() | GetService(Type) | |
![]() | GetType() | |
![]() | InitializeLifetimeService() | Obtains a lifetime service object to control the lifetime policy for this instance.(Inherited from MarshalByRefObject.) |
![]() | MemberwiseClone() | |
![]() | MemberwiseClone(Boolean) | Creates a shallow copy of the current MarshalByRefObject object.(Inherited from MarshalByRefObject.) |
![]() | ToString() |
Use a DirectorySearcher object to search and perform queries against an Active Directory Domain Services hierarchy using Lightweight Directory Access Protocol (LDAP). LDAP is the only system-supplied Active Directory Service Interfaces (ADSI) provider that supports directory searching. An administrator can make, alter, and delete objects that are found in the hierarchy. For more information, see Using System.DirectoryServices.
When you create an instance of DirectorySearcher, you specify the root you want to retrieve, and an optional list of properties to retrieve. The SearchRoot property enables you to set additional properties to do the following tasks:
Cache the search results on the local computer. Set the CacheResults property to true to store directory information on the local computer. Updates are made to this local cache and committed to Active Directory Domain Services only when the DirectoryEntry.CommitChanges method is called.
Specify the length of time to search, using the ServerTimeLimit property.
Retrieve attribute names only. Set the PropertyNamesOnly property to true to retrieve only the names of attributes to which values have been assigned.
Perform a paged search. Set the PageSize property to specify the maximum number of objects that are returned in a paged search. If you do not want to perform a paged search, set the PageSize property to its default of zero.
Specify the maximum number of entries to return, using the SizeLimit property. If you set the SizeLimit property to its default of zero, the server-determined default is 1000 entries.
Note |
|---|
If the maximum number of returned entries and time limits exceed the limitations that are set on the server, the server settings override the component settings. |
For a list of initial property values for an instance of the DirectorySearcher class, see the DirectorySearcher() constructor.
Note |
|---|
It is assumed that you have a general understanding of Active Directory Domain Services before using this class. For more information, see the System.DirectoryServices overview. |
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.





