Aracılığıyla paylaş


PasswordRecovery.VerifyingUser Olay

Tanım

Kullanıcı adı üyelik sağlayıcısı tarafından doğrulanmadan önce gerçekleşir.

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 

Olay Türü

Örnekler

Aşağıdaki kod örneği, gönderilen kullanıcı adının geçerli bir e-posta adresi olarak biçimlendirilip biçimlendirilmediğini denetlemek için olayını kullanır VerifyingUser . Kullanıcı adı düzgün biçimlendirilmemişse, UserNameInstructionText özelliği hatayı gösterecek şekilde değiştirilir.

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

Açıklamalar

Olay VerifyingUser , kullanıcı adının geçerli olup olmadığını belirlemek için kullanıcı adı üyelik sağlayıcısına gönderilmeden önce sunucuda oluşturulur. Tüm büyük veya küçük harflere dönüştürme veya kullanıcı adının e-posta adresi gibi belirli bir biçimde olduğunu doğrulama gibi kullanıcı adında gerekli ön işlemleri gerçekleştirmek için bu olayı kullanın.

Denetim PasswordRecovery önce olayı tetikler VerifyingUser ve ardından girilen kullanıcı adının Web sitesi için geçerli bir kullanıcı adı olup olmadığını belirlemek için özelliğinde MembershipProvider belirtilen üyelik sağlayıcısını kullanır. Geçerliyse ve üyelik sağlayıcısı parola sorusu ve yanıtını destekliyorsa, parola doğrulama sorusu Web sitesinden döndürülür ve PasswordRecovery denetim Soru görünümünü görüntüler. Kullanıcı adı geçerli değilse, özellikteki GeneralFailureText metin UserName görünümünde görüntülenir, böylece kullanıcı farklı bir kullanıcı adı girebilir.

Üyelik sağlayıcısı parola soru ve yanıtını desteklemiyorsa, SendingMail olay oluşturulur ve kullanıcıya yeni veya kurtarılan parolayla e-posta gönderilir.

Olayları işleme hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.

Şunlara uygulanır

Ayrıca bkz.