Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La tarea de directorio más habitual es buscar. Si bien es posible utilizar el objeto DirectoryEntry para realizar búsquedas sencillas, por ejemplo, buscar un solo objeto de directorio necesario para una operación sencilla como enlazar con el dominio, este objeto no puede realizar búsquedas complejas ni devolver grandes conjuntos de resultados.
Para agregar una operación de búsqueda eficaz a la aplicación, utilice el objeto DirectorySearcher. El objeto DirectorySearcher proporciona un conjunto de propiedades y métodos que le permiten seleccionar varios criterios de búsqueda, por ejemplo, un ámbito de búsqueda, cadenas comodín, tamaños de páginas para conjuntos de caracteres y ordenación.
En esta sección se incluyen los siguientes temas:
- Tamaño de búsqueda y tamaño de página
- Obtener resultados de búsquedas
- Establecer el ámbito de la búsqueda
- Establecer filtros de búsqueda
- Opciones de búsqueda adicionales
- Ejemplo de DirectorySearcher
Antes de realizar una búsqueda, debe estar familiarizado con el objeto DirectorySearchery los conceptos de búsqueda en directorios. Si anteriormente utilizó ADSI, es posible que haya utilizado la interfaz COM de IDirectorySearch. El objeto DirectorySearcher es un contenedor de IDirectorySearch. Para obtener más información sobre esta interfaz, vea el tema sobre IDirectorySearch de la MSDN Library en https://go.microsoft.com/fwlink/?LinkID=27252.
Para realizar una búsqueda, la aplicación primero debe enlazar con un punto raíz en el directorio. Para obtener un rendimiento óptimo, seleccione un punto que proporcione el conjunto de resultados más reducido. Configure DirectorySearcher para proporcionar los siguientes parámetros para la operación de búsqueda:
- Un filtro de búsqueda que acote la búsqueda al tipo específico de objeto
- Un ámbito de objetos en los que realizar la búsqueda
- Una lista de atributos que se devuelvan con el objeto
Al configurar esta búsqueda, debe decidir qué tipo de objeto desea buscar y, a continuación, crear un filtro de búsqueda para ese tipo de objeto. El objeto DirectorySearcher proporciona una propiedad Filter que requiere una cadena que utilice la sintaxis LDAP como cadena de filtro.
A continuación, debe decidir si el ámbito del filtro debe estar en la base del nodo con el que está enlazada la aplicación, a través de un nivel o a través de un subárbol. La propiedad SearchScope se utiliza para establecer este parámetro. Finalmente, tiene que decidir qué nombres y valores de propiedad se deben devolver con el objeto.
Si lo desea, puede utilizar un objeto DirectorySynchronization para realizar una búsqueda de sincronización de directorio, que permite a la aplicación realizar una búsqueda, ejecutar una iteración en todos los resultados, realizar otras funciones no relacionadas con la búsqueda o volverse inactiva durante un tiempo. A continuación, la aplicación volverá a realizar la misma búsqueda para recuperar cualquier nuevo resultado para esa búsqueda. De este modo, una aplicación puede realizar un seguimiento de cualquier actualización de los servicios de dominio de Active Directory que reúna los criterios que estén especificados en la búsqueda.
En el siguiente diagrama se ilustra una búsqueda que enlaza con el contenedor Sales.
.gif)
DirectorySearcher devuelve un solo resultado y sus propiedades en un objeto SearchResult. Los conjuntos de resultados se devuelven como una SearchResultCollection, que es un contenedor de todos los objetos SearchResult devueltos por la búsqueda.
DirectorySearcher proporciona estos dos métodos para realizar la búsqueda:
Para obtener más información y un procedimiento para crear una aplicación de búsqueda básica, vea el tema Buscar en jerarquías de Active Directory de la biblioteca de MSDN en https://go.microsoft.com/fwlink/?LinkID=27252.
Consulte también
Referencia
System.DirectoryServices
DirectoryEntry
DirectorySearcher
SearchScope
DirectorySynchronization
Conceptos
Introducción a System.DirectoryServices
Send comments about this topic to Microsoft.
Copyright © 2007 Microsoft Corporation. Reservados todos los derechos.