SqlMembershipProvider.GetUserNameByEmail(String) 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.
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
- String
O endereço de email a ser pesquisado.
Retornos
O nome de usuário associado ao endereço de email especificado. Se nenhuma correspondência for encontrada, este método retorna null
.
Exceções
email
excede 256 caracteres.
Existe mais de um usuário com o mesmo endereço de email no banco de dados e RequiresUniqueEmail é true
.
Exemplos
O exemplo de código a seguir recupera o nome de usuário de um endereço de email especificado.
Observação
Este exemplo usa a Membership classe para chamar o SqlMembershipProvider especificado como o defaultProvider
no arquivo Web.config. Se você precisar acessar o provedor padrão como o tipo SqlMembershipProvider, poderá converter a Provider propriedade da Membership classe . Para acessar outros provedores configurados como um tipo de provedor específico, você pode acessá-los pelo nome configurado com a Providers propriedade da Membership classe e convertê-los como o tipo de provedor específico.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public void Search_OnClick(object sender, EventArgs args)
{
string username = Membership.GetUserNameByEmail(EmailTextBox.Text);
if (username == null)
{
Msg.Text = "Email address " + Server.HtmlEncode(EmailTextBox.Text) + " is not found. Please reenter.";
}
else
{
Msg.Text = "The user name for " + Server.HtmlEncode(EmailTextBox.Text) +
" is " + Server.HtmlEncode(username) + ".";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Retrieve Username By Email</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Forgot your Username? Search for it by email address.</h3>
<asp:Label id="Msg" runat="server" ForeColor="maroon" /><br />
Email address: <asp:Textbox id="EmailTextBox" Columns="30" runat="server" />
<asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
ControlToValidate="EmailTextBox" ForeColor="red"
Display="Static" ErrorMessage="Required" /><br />
<asp:Button id="SearchButton" Text="Search"
OnClick="Search_OnClick" runat="server" />
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public Sub Search_OnClick(sender As Object, args As EventArgs)
Dim username As String = Membership.GetUserNameByEmail(EmailTextBox.Text)
If username Is Nothing Then
Msg.Text = "Email address " & Server.HtmlEncode(EmailTextBox.Text) & " is not found. Please reenter."
Else
Msg.Text = "The user name for " & Server.HtmlEncode(EmailTextBox.Text) & _
" is " & Server.HtmlEncode(username) & "."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Retrieve Username By Email</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Forgot your Username? Search for it by email address.</h3>
<asp:Label id="Msg" runat="server" ForeColor="maroon" /><br />
Email address: <asp:Textbox id="EmailTextBox" Columns="30" runat="server" />
<asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
ControlToValidate="EmailTextBox" ForeColor="red"
Display="Static" ErrorMessage="Required" /><br />
<asp:Button id="SearchButton" Text="Search"
OnClick="Search_OnClick" runat="server" />
</form>
</body>
</html>
Comentários
Esse método é chamado pela Membership classe com um endereço de email, que ele usa para recuperar um nome de usuário associado do banco de dados do SQL Server especificado no arquivo de configuração do aplicativo ASP.NET (Web.config).
Se mais de um usuário no banco 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 como true
no arquivo de configuração de 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
.