ActiveDirectoryMembershipProvider.FindUsersByName Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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 pageSize
MembershipUser 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
.
La propiedad EnableSearchMethods es false
.
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 al décimo usuario. El totalRecords
parámetro se establecería en 13.
Puede controlar si desea 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 tema de la ActiveDirectoryMembershipProvider 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.