ActiveDirectoryMembershipProvider.GetUserNameByEmail(String) Método

Definição

Obtém o nome de utilizador 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 e-mail a pesquisar.

Devoluções

O nome de utilizador associado ao endereço de email especificado.

Exceções

email ultrapassa os 256 caracteres

-ou-

Depois de aparar, email está vazio.

Existem mais do que um utilizador no armazenamento de dados com o mesmo endereço de email e o RequiresUniqueEmail valor da propriedade é true.

O fornecedor não está inicializado.

Observações

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

Se mais do que um utilizador no armazenamento de dados de membros tiver o mesmo endereço de email, o primeiro nome de utilizador encontrado é devolvido. Pode definir o atributo requiresUniqueEmail do elemento membership (ASP.NET Settings Schema) para true no ficheiro de configuração da aplicação para garantir que cada endereço de email na base de dados é único.

Os espaços à frente e à saída são cortados a partir do email valor do parâmetro. Se o endereço de email estiver vazio após a aparação, um ArgumentException é lançado. Se o endereço de email for null, todos os nomes de utilizador na Active Directory data store são pesquisados e o primeiro nome de utilizador é devolvido.

Recomendamos que não ative a pesquisa em sistemas de produção até confirmar que as consultas de pesquisa emitidas pela ActiveDirectoryMembershipProvider classe não afetam negativamente o desempenho do seu servidor de diretórios.

Importante

O GetUserNameByEmail método irá correr mesmo quando a EnableSearchMethods propriedade é false.

Como a ActiveDirectoryMembershipProvider classe foi concebida para um ambiente Web sem estado, não consegue utilizar as otimizações de paginação expostas pelas APIs subjacentes System.DirectoryServices . Isto significa que as operações de paginação durante pesquisas em grandes diretórios são muito dispendiosas e devem ser evitadas. As operações de pesquisa são sempre emitidas contra o servidor de diretório configurado na cadeia de ligação, ou contra um servidor selecionado automaticamente no caso de uma cadeia de ligação apontar para um domínio. O fornecedor não utiliza um catálogo global para os seus métodos de pesquisa.

O fornecedor utiliza uma pesquisa em subárvore que começa no ponto de pesquisa especificado na cadeia de ligação. Consulte o ActiveDirectoryMembershipProvider tópico da aula para mais informações sobre cordas de ligação.

Aplica-se a

Ver também