PasswordRecovery.VerifyingAnswer Kejadian
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terjadi ketika pengguna telah mengirimkan jawaban atas pertanyaan konfirmasi pemulihan kata sandi.
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
Jenis Acara
Contoh
Contoh kode berikut menangani VerifyingAnswer peristiwa dan mengubah properti yang ditampilkan UserName .
Penting
Contoh ini berisi kotak teks yang menerima input pengguna, yang merupakan potensi ancaman keamanan. Secara default, ASP.NET halaman Web memvalidasi bahwa input pengguna tidak menyertakan elemen skrip atau HTML. Untuk informasi selengkapnya, lihat Gambaran Umum Eksploitasi Skrip.
<%@ 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>
Keterangan
Peristiwa terjadi VerifyingAnswer di server setelah pengguna mengirimkan jawaban atas pertanyaan konfirmasi kata sandi. Anda dapat menggunakan kejadian ini untuk menyiapkan jawaban yang dikirimkan oleh pengguna untuk penyedia keanggotaan, misalnya dengan mengonversinya menjadi huruf besar atau huruf kecil.
Kontrol PasswordRecovery pertama-tama VerifyingAnswer menaikkan peristiwa, lalu menggunakan penyedia keanggotaan yang ditentukan dalam MembershipProvider properti untuk membandingkan jawaban yang dimasukkan oleh pengguna dengan kata sandi yang disimpan di situs Web.
Untuk informasi selengkapnya tentang menangani peristiwa, lihat Menangani dan Menaikkan Peristiwa.