PasswordRecovery.VerifyingUser Evento
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.
Ocorre antes que o nome de usuário é validado pelo provedor de associação.
public:
event System::Web::UI::WebControls::LoginCancelEventHandler ^ VerifyingUser;
public event System.Web.UI.WebControls.LoginCancelEventHandler VerifyingUser;
member this.VerifyingUser : System.Web.UI.WebControls.LoginCancelEventHandler
Public Custom Event VerifyingUser As LoginCancelEventHandler
Tipo de evento
Exemplos
O exemplo de código a seguir usa o VerifyingUser evento para verificar se o nome de usuário enviado está formatado como um endereço de email válido. Se o nome de usuário não estiver formatado corretamente, a UserNameInstructionText propriedade será alterada para mostrar o erro.
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
bool IsValidEmail(string strIn)
{
// Return true if strIn is in valid email format.
return Regex.IsMatch(strIn, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$");
}
void PasswordRecovery1_VerifyingUser(object sender, System.Web.UI.WebControls.LoginCancelEventArgs e)
{
if (!IsValidEmail(PasswordRecovery1.UserName))
{
PasswordRecovery1.UserNameInstructionText = "You must enter a valid email address.";
e.Cancel = true;
}
else
{
PasswordRecovery1.UserNameInstructionText = "Enter your User Name to receive your password.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:passwordrecovery id="PasswordRecovery1"
runat="server"
onverifyinguser="PasswordRecovery1_VerifyingUser">
</asp:passwordrecovery>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Function IsValidEmail(ByVal strIn As String) As Boolean
' Return true if strIn is in valid email format.
Return Regex.IsMatch(strIn, ("^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"))
End Function
Sub PasswordRecovery1_VerifyingUser(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LoginCancelEventArgs)
If Not IsValidEmail(PasswordRecovery1.UserName) Then
PasswordRecovery1.UserNameInstructionText = "You must enter a valid email address."
e.Cancel = True
Else
PasswordRecovery1.UserNameInstructionText = "Enter your User Name to receive your password."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:passwordrecovery id="PasswordRecovery1"
runat="server"
onverifyinguser="PasswordRecovery1_VerifyingUser">
</asp:passwordrecovery>
</form>
</body>
</html>
Comentários
O VerifyingUser evento é gerado no servidor antes que o nome de usuário seja enviado ao provedor de associação para determinar se o nome de usuário é válido. Use esse evento para executar qualquer pré-processamento necessário no nome de usuário, como convertê-lo em todas as letras maiúsculas ou minúsculas ou verificar se o nome de usuário está em um formato específico, como um endereço de email.
Primeiro PasswordRecovery , o controle aciona o VerifyingUser evento e, em seguida, usa o provedor de associação especificado na MembershipProvider propriedade para determinar se o nome de usuário inserido é um nome de usuário válido para o site da Web. Se for válido e o provedor de associação der suporte a perguntas e respostas de senha, a pergunta de verificação de senha será retornada do site e o PasswordRecovery controle exibirá o modo de exibição Pergunta. Se o nome de usuário não for válido, o texto na GeneralFailureText propriedade será exibido na exibição UserName para que o usuário possa inserir um nome de usuário diferente.
Se o provedor de associação não der suporte a perguntas e respostas de senha, o SendingMail evento será gerado e o email será enviado ao usuário com a senha nova ou recuperada.
Para obter mais informações sobre como lidar com eventos, consulte Manipulando e levantando eventos.