Condividi tramite


PasswordRecovery.VerifyingUser Evento

Definizione

Si verifica prima della convalida del nome utente da parte del provider di appartenenza.

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 evento

Esempio

Nell'esempio di codice seguente viene usato l'evento VerifyingUser per verificare se il nome utente inviato viene formattato come indirizzo di posta elettronica valido. Se il nome utente non è formattato correttamente, la UserNameInstructionText proprietà viene modificata per visualizzare l'errore.

<%@ 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>

Commenti

L'evento VerifyingUser viene generato nel server prima che il nome utente venga inviato al provider di appartenenza per determinare se il nome utente è valido. Usare questo evento per eseguire qualsiasi pre-elaborazione necessaria per il nome utente, ad esempio la conversione in tutte le lettere maiuscole o minuscole o per verificare che il nome utente sia in un formato specifico, ad esempio un indirizzo di posta elettronica.

Il PasswordRecovery controllo genera prima l'evento e quindi usa il VerifyingUser provider di appartenenza specificato nella MembershipProvider proprietà per determinare se il nome utente immesso è un nome utente valido per il sito Web. Se è valido e il provider di appartenenza supporta la domanda e la risposta alla password, la domanda di verifica della password viene restituita dal sito Web e il PasswordRecovery controllo visualizza la visualizzazione Domanda. Se il nome utente non è valido, il testo nella GeneralFailureText proprietà viene visualizzato nella visualizzazione UserName in modo che l'utente possa immettere un nome utente diverso.

Se il provider di appartenenza non supporta la domanda e la risposta alla password, l'evento SendingMail viene generato e il messaggio di posta elettronica viene inviato all'utente con la nuova password o recuperata.

Per ulteriori informazioni sulla gestione degli eventi, consultare gestione e generazione di eventi.

Si applica a

Vedi anche