ActiveDirectoryMembershipProvider.GetUserNameByEmail(String) Método

Definição

Obtém o nome de usuário associado ao endereço de email especificado.

public:
 override System::String ^ GetUserNameByEmail(System::String ^ email);
public override string GetUserNameByEmail (string email);
override this.GetUserNameByEmail : string -> string
Public Overrides Function GetUserNameByEmail (email As String) As String

Parâmetros

email
String

O endereço de email a ser pesquisado.

Retornos

O nome de usuário associado ao endereço de email especificado.

Exceções

email excede 256 caracteres

- ou -

após a filtragem, email está vazio.

Há mais de um usuário no armazenamento de dados com o mesmo endereço de email e o valor da propriedade RequiresUniqueEmail é true.

O provedor não foi inicializado.

Comentários

Esse método é chamado pela Membership classe para recuperar um nome de usuário do armazenamento de dados do Active Directory com base no endereço de email do usuário.

Se mais de um usuário no armazenamento de dados de associação tiver o mesmo endereço de email, o primeiro nome de usuário encontrado será retornado. Você pode definir o requiresUniqueEmail atributo do elemento Membership Element (ASP.NET Settings Schema) como true no arquivo de configuração do aplicativo para garantir que cada endereço de email no banco de dados seja exclusivo.

Os espaços à esquerda e à direita são cortados do valor de parâmetro email. Se o endereço de email estiver vazio após o corte, um ArgumentException será gerado. Se o endereço de email for null, todos os nomes de usuário no armazenamento de dados do Active Directory serão pesquisados e o primeiro nome de usuário será retornado.

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.

Importante

O GetUserNameByEmail método será executado mesmo quando a EnableSearchMethods propriedade for false.

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.

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.

Aplica-se a

Confira também