ActiveDirectoryMembershipProvider.FindUsersByName Método

Definición

Devuelve una colección de usuarios del almacén de datos de Active Directory basándose en el nombre de usuario.

public:
 override System::Web::Security::MembershipUserCollection ^ FindUsersByName(System::String ^ usernameToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public override System.Web.Security.MembershipUserCollection FindUsersByName (string usernameToMatch, int pageIndex, int pageSize, out int totalRecords);
override this.FindUsersByName : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Overrides Function FindUsersByName (usernameToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection

Parámetros

usernameToMatch
String

Nombre de usuario o parte del nombre de usuario que se va a buscar.

pageIndex
Int32

Índice de la página de resultados que se va a devolver. pageIndex es de base cero.

pageSize
Int32

Tamaño de la página de resultados que se va a devolver.

totalRecords
Int32

El resultado que devuelva este método contendrá el número total de registros devueltos de la colección. Este parámetro se pasa sin inicializar.

Devoluciones

MembershipUserCollection que contiene instancias de pageSizeMembershipUser a partir de la página especificada por pageIndex.

Excepciones

Se llama al método FindUsersByName(String, Int32, Int32, Int32) antes de que se inicializa la instancia de ActiveDirectoryMembershipProvider.

usernameToMatch está vacío o supera la longitud máxima del nombre de usuario (normalmente 256 caracteres).

o bien

usernameToMatch contiene comas.

o bien

pageIndex es menor que 0.

, o

pageSize es menor que 1.

o bien

pageSize multiplicado por pageIndex, más pageSize, menos 1 es mayor que Int32.MaxValue.

usernameToMatch es null.

Comentarios

El FindUsersByName método devuelve una MembershipUserCollection instancia que contiene los registros de usuario del almacén de datos de Active Directory para todos los nombres de usuario que coinciden con los userNameToMatch parámetros. Los registros se devuelven ordenados alfabéticamente por nombre de usuario.

Los resultados devueltos por el FindUsersByName método están restringidos por los pageIndex parámetros y pageSize . El pageSize parámetro especifica el número máximo de MembershipUser instancias que se van a devolver en .MembershipUserCollection El pageIndex parámetro especifica la página de resultados que se va a devolver, donde 0 (cero) indica la primera página.

El totalRecords parámetro es un out parámetro que se establece en el número total de usuarios de pertenencia coincidentes que se encuentran en el almacén de datos de Active Directory. Por ejemplo, si hay 13 usuarios para el almacén de datos configurado y el pageIndex valor era 1 con un pageSize valor de 5, el MembershipUserCollection devuelto contendrá el sexto hasta el décimo usuario. El totalRecords parámetro se establecería en 13.

Puede controlar si quiere permitir la búsqueda de usuarios estableciendo la EnableSearchMethods propiedad en el archivo de configuración de la aplicación mediante el enableSearchMethods atributo del elemento membership Element (ASP.NET Settings Schema). Establecer el valor de propiedad EnableSearchMethods en false hace que el FindUsersByName método produzca una NotSupportedException excepción.

El proveedor usa una búsqueda de subárbol que comienza en el punto de búsqueda especificado en la cadena de conexión. Consulte el ActiveDirectoryMembershipProvider tema de la clase para obtener más información sobre las cadenas de conexión.

Se recomienda no habilitar la búsqueda en sistemas de producción hasta que haya confirmado que las consultas de búsqueda emitidas por la ActiveDirectoryMembershipProvider clase no afectan negativamente al rendimiento del servidor de directorios. Puesto que la ActiveDirectoryMembershipProvider clase está diseñada para un entorno web sin estado, no puede usar las optimizaciones de paginación expuestas por las API subyacentes System.DirectoryServices . Esto significa que las operaciones de paginación durante las búsquedas en directorios grandes son muy costosas y deben evitarse. Las operaciones de búsqueda siempre se emiten en el servidor de directorios configurado en la cadena de conexión o en un servidor seleccionado automáticamente en el caso de una cadena de conexión que apunta a un dominio. El proveedor no usa un catálogo global para sus métodos de búsqueda.

Se aplica a

Consulte también