PasswordRecovery.VerifyingAnswer Событие

Определение

Происходит в случае передачи пользователем неправильного ответа на контрольный вопрос для восстановления пароля.

public:
 event System::Web::UI::WebControls::LoginCancelEventHandler ^ VerifyingAnswer;
public event System.Web.UI.WebControls.LoginCancelEventHandler VerifyingAnswer;
member this.VerifyingAnswer : System.Web.UI.WebControls.LoginCancelEventHandler 
Public Custom Event VerifyingAnswer As LoginCancelEventHandler 

Тип события

Примеры

В следующем примере кода выполняется обработка VerifyingAnswer события и изменение отображаемого UserName свойства.

Важно!

В этом примере содержится текстовое поле, которое принимает введенные пользователем данные, что является потенциальной угрозой безопасности. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.

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

    void PasswordRecovery1_VerifyingUser(Object sender, System.Web.UI.WebControls.LoginCancelEventArgs e)
    {
          DropDownList provider = ((DropDownList)PasswordRecovery1.FindControl("LoginProvider"));

        PasswordRecovery1.MembershipProvider = provider.SelectedValue;
        if (PasswordRecovery1.MembershipProvider != "Default")
        {
          PasswordRecovery1.UserName = String.Format("{0}\\{1}",
            PasswordRecovery1.MembershipProvider, PasswordRecovery1.UserName);    
        }         

    }
    
    void PasswordRecovery1_VerifyingAnswer(Object sender, System.Web.UI.WebControls.LoginCancelEventArgs e)
    {
        PasswordRecovery1.UserName = String.Format("{0}\\{1}",
          PasswordRecovery1.MembershipProvider, PasswordRecovery1.UserName);
    }  
    
</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"
        onverifyinganswer="PasswordRecovery1_VerifyingAnswer">
        <usernametemplate>
          <table border="0">
            <tr>
              <td align="Center" colspan="2">Forgot Your Password?</td>
            </tr>
            <tr>
              <td align="Center" colspan="2">Enter your User Name to receive your password.</td>
            </tr>
            <tr>
              <td>Log in domain:</td>
              <td>
                <asp:dropdownlist id="LoginProvider" runat="server">
                  <asp:listitem value="Default">Default</asp:listitem>
                  <asp:listitem value="Administration">Administration</asp:listitem>
                  <asp:listitem value="Editorial">Editorial</asp:listitem>
                  <asp:listitem value="Finance">Finance</asp:listitem>
                  <asp:listitem value="Marketing">Marketing</asp:listitem>
                </asp:dropdownlist>
              </td>
            </tr>
            <tr>
              <td align="Right">User Name:</td>
              <td>
                <asp:textbox runat="server" id="UserName"></asp:textbox>
                <asp:requiredfieldvalidator runat="server" 
                  controltovalidate="UserName" 
                  errormessage="User Name." 
                  id="UserNameRequired">
                  *
                </asp:requiredfieldvalidator>
              </td>
            </tr>
            <tr>
              <td align="Right" colspan="2">
                <asp:button runat="server" 
                  commandname="Submit" 
                  text="Submit" 
                  id="Button">
                </asp:button>
              </td>
            </tr>
            <tr>
              <td colspan="2" style="color:Red;">
                <asp:literal runat="server" id="FailureText"></asp:literal>
              </td>
            </tr>
          </table>
        </usernametemplate>
      </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"> 
  Sub PasswordRecovery1_VerifyingUser(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LoginCancelEventArgs)
  
      Dim provider as DropDownList
      provider = CType(PasswordRecovery1.FindControl("LoginProvider"),DropDownList)
    PasswordRecovery1.MembershipProvider = provider.SelectedValue
    
        If PasswordRecovery1.MembershipProvider <> "Default" Then
          PasswordRecovery1.UserName = String.Format("{1}\\{0}", _
            PasswordRecovery1.MembershipProvider, PasswordRecovery1.UserName)
        End If
        
    End Sub
    
    Sub PasswordRecovery1_VerifyingAnswer(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LoginCancelEventArgs)
    
      PasswordRecovery1.UserName = String.Format("{1}\\{0}", _
        PasswordRecovery1.MembershipProvider, PasswordRecovery1.UserName)
            
    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" 
        onverifyinganswer="PasswordRecovery1_VerifyingAnswer">
          <usernametemplate>
            <table border="0">
              <tr>
                  <td align="Center" colspan="2">Forgot Your Password?</td>
              </tr>
              <tr>
                  <td align="Center" colspan="2">Enter your User Name to receive your password.</td>
              </tr>
              <tr>
                <td>Log in domain:</td>
                <td>
                  <asp:dropdownlist id="LoginProvider" runat="server">
                    <asp:listitem value="Default">Default</asp:listitem>
                    <asp:listitem value="Administration">Administration</asp:listitem>
                    <asp:listitem value="Editorial">Editorial</asp:listitem>
                    <asp:listitem value="Finance">Finance</asp:listitem>
                    <asp:listitem value="Marketing">Marketing</asp:listitem>
                  </asp:dropdownlist>
                </td>
              </tr>
              <tr>
                <td align="Right">User Name:</td>
                <td>
                  <asp:textbox runat="server" 
                    id="UserName">
                  </asp:textbox>
                  <asp:requiredfieldvalidator runat="server" 
                    controltovalidate="UserName" 
                    errormessage="User Name." 
                    id="UserNameRequired">
                    *
                  </asp:requiredfieldvalidator>
                </td>
              </tr>
              <tr>
                <td align="Right" colspan="2">
                  <asp:button runat="server" 
                    commandname="Submit" 
                    text="Submit" 
                    id="Button">
                  </asp:button>
                </td>
              </tr>
              <tr>
                <td colspan="2" style="color:Red;">
                  <asp:literal runat="server" id="FailureText"></asp:literal>
                </td>
              </tr>
            </table>
          </usernametemplate>
      </asp:passwordrecovery>
    </form>
  </body>
</html>

Комментарии

Событие VerifyingAnswer возникает на сервере после того, как пользователь отправляет ответ на вопрос о подтверждении пароля. Это событие можно использовать для подготовки ответа, отправленного пользователем для поставщика членства, например путем преобразования его во все прописные или строчные буквы.

Элемент PasswordRecovery управления сначала вызывает VerifyingAnswer событие, а затем использует поставщик членства, указанный в MembershipProvider свойстве , для сравнения ответа, введенного пользователем, с паролем, хранящимся на веб-сайте.

Дополнительные сведения об обработке событий см. в разделе Обработка и вызов событий.

Применяется к

См. также раздел