ActiveDirectoryMembershipProvider.FindUsersByEmail Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna uma coleção de usuários associados de armazenamento de dados do Active Directory com base no endereço de email do usuário.
public:
override System::Web::Security::MembershipUserCollection ^ FindUsersByEmail(System::String ^ emailToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public override System.Web.Security.MembershipUserCollection FindUsersByEmail (string emailToMatch, int pageIndex, int pageSize, out int totalRecords);
override this.FindUsersByEmail : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Overrides Function FindUsersByEmail (emailToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection
Parâmetros
- emailToMatch
- String
Endereço de email ou parte do endereço de email a serem pesquisados.
- pageIndex
- Int32
O índice da página de resultados a serem retornados.
pageIndex
é baseado em zero.
- pageSize
- Int32
O tamanho da página de resultados a ser retornada.
- totalRecords
- Int32
Quando este método retorna, contém o número total de usuários retornado da coleção. Este parâmetro é passado não inicializado.
Retornos
Um MembershipUserCollection contendo instâncias pageSize
MembershipUser começando na página especificada por pageIndex
.
Exceções
O método FindUsersByEmail(String, Int32, Int32, Int32) é chamado antes que a instância ActiveDirectoryMembershipProvider seja inicializada.
emailToMatch
está vazio.
- ou -
emailToMatch
excede 256 caracteres.
- ou -
pageIndex
é menor que 0.
- ou -
pageSize
é menor que 1.
- ou -
pageSize
multiplicado por pageIndex
, mais pageSize
, menos 1 é maior que Int32.MaxValue.
A propriedade EnableSearchMethods é false
.
Comentários
O FindUsersByEmail método obtém um MembershipUserCollection que contém os registros de usuário do repositório do Active Directory que correspondem aos emailToMatch
parâmetros. Os registros de usuário são retornados classificados em ordem crescente por endereço de email.
O emailToMatch
parâmetro é limitado a 256 caracteres.
A ActiveDirectoryMembershipProvider classe emitirá a pesquisa usando os clientSearchTimeout
valores de configuração e serverSearchTimeout
. Como a ActiveDirectoryMembershipProvider classe executa pesquisas no servidor de diretório usando páginas com 512 linhas por página, os tempos limite se aplicam a cada página de resultados buscados pela ActiveDirectoryMembershipProvider classe . Por exemplo, se uma consulta de pesquisa resultar em 1.000 linhas de dados, a ActiveDirectoryMembershipProvider classe buscará essas informações como duas páginas de dados. Isso significa que os tempos limite do cliente e da pesquisa começarão a contar a partir de zero quando a ActiveDirectoryMembershipProvider classe solicitar a segunda página de dados.
Os resultados retornados pelo FindUsersByEmail método são restritos pelos pageIndex
parâmetros e pageSize
. O pageSize
parâmetro especifica o número máximo de MembershipUser instâncias a serem retornadas no MembershipUserCollection. O pageIndex
parâmetro especifica qual página de resultados retornar, em que 0 (zero) indica a primeira página.
O totalRecords
parâmetro é um out
parâmetro definido como o número total de usuários de associação correspondentes encontrados no armazenamento de dados do Active Directory. Por exemplo, se houver 13 usuários para o armazenamento de dados configurado e o pageIndex
valor for 1 com um pageSize
de 5, o MembershipUserCollection retornado conterá o sexto até o décimo usuário. O totalRecords
parâmetro seria definido como 13.
Você pode controlar se deseja permitir a pesquisa de usuários definindo a EnableSearchMethods propriedade no arquivo de configuração do aplicativo usando o enableSearchMethods
atributo do elemento membership Element (ASP.NET Settings Schema). Definir a EnableSearchMethods propriedade como false
faz com que o FindUsersByEmail método gere uma NotSupportedException exceção.
O provedor usa uma pesquisa de subárvores começando no ponto de pesquisa especificado na cadeia de conexão. Consulte o tópico de ActiveDirectoryMembershipProvider classe para obter mais informações sobre cadeias de conexão.
Recomendamos que você não habilite a pesquisa em sistemas de produção até confirmar que as consultas de pesquisa emitidas pela classe não afetam negativamente o ActiveDirectoryMembershipProvider desempenho do servidor de diretório. Como a ActiveDirectoryMembershipProvider classe foi projetada para um ambiente Web sem estado, não é possível usar as otimizações de paginação expostas pelas APIs subjacentes System.DirectoryServices . Isso significa que as operações de paginação durante pesquisas em diretórios grandes são muito caras e devem ser evitadas. As operações de pesquisa sempre são emitidas no servidor de diretório configurado na cadeia de conexão ou em um servidor selecionado automaticamente no caso de uma cadeia de conexão apontando para um domínio. O provedor não usa um catálogo global para seus métodos de pesquisa.