PasswordRecovery.VerifyingUser Evento
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Ocorre antes do nome de utilizador ser validado pelo fornecedor de membros.
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 seguinte utiliza o VerifyingUser evento para verificar se o nome de utilizador submetido está formatado como um endereço de email válido. Se o nome de utilizador não estiver formatado corretamente, a UserNameInstructionText propriedade é 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>
Observações
O VerifyingUser evento é aberto no servidor antes do nome de utilizador ser submetido ao fornecedor de membros para determinar se o nome de utilizador é válido. Use este evento para realizar qualquer pré-processamento necessário no nome de utilizador, como convertê-lo para letras maiúsculas ou minúsculas, ou verificar se o nome de utilizador está num determinado formato, como um endereço de email.
O PasswordRecovery controlo primeiro levanta o VerifyingUser evento e depois usa o fornecedor de membros especificado na MembershipProvider propriedade para determinar se o nome de utilizador inserido é válido para o site. Se for válida e o fornecedor de membros suportar pergunta e resposta por palavra-passe, a pergunta de verificação de palavra-passe é devolvida do site e o PasswordRecovery controlo mostra a vista Pergunta. Se o nome de utilizador não for válido, o texto na GeneralFailureText propriedade é exibido na vista Nome de Utilizador para que o utilizador possa inserir um nome de utilizador diferente.
Se o fornecedor de membros não suportar perguntas e respostas por palavra-passe, o SendingMail evento é levantado e o email é enviado ao utilizador com a nova palavra-passe ou a palavra-passe recuperada.
Para obter mais informações sobre como manipular eventos, consulte Manipulando e gerando eventos.