بررسی علت های login نشدن
یکشنبه 5 مرداد 1393علت های login نشدن به دلایل مختلف روی می دهد در اینجا به بررسی علت ها می پردازیم و در آخر راه حلی ارایه میدهیم
در این مقاله علت login نشدن را بر این اساس که می تواند به دلیل نداشتن کاربر مورد تایید یا قفل شدن باشد را بررسی می کنیم.
Asp.net membership یک کتابخانه قدرتمند برای ساخت login و مکانیزم نقش ها برای وب سایت های asp.net است،اما متد شناسایی کاربر(validator user) در سه مورد false برمی گرداند و یا اجازه login شدن را نمی دهد:
1- نام کاربری و یا رمز عبور اشتباه است.
2- حساب کاربری مورد تایید و یا فعال واقع نشده است.
3- حساب کاربری قفل یا معلق و یا غیر فعال شده است.
بنابراین پیدا کردن علت مشکل است و در بسیاری از موارد ما مجبوریم پیام های متفاوتی را بر اساس شرایط متفاوت به نمایش بگذاریم.از این رو من موفق به انجام راه حل زیر شدم:
C# bool isValid = Membership.ValidateUser(txtUserName.Text, txtPassword.Text); if (!isValid) { MembershipUser user = Membership.GetUser(txtUserName.Text); if (user != null) { //User exists if (!user.IsApproved) { //Account Unapproved lblMessage.Text = "Your account is not approved."; } else if (user.IsLockedOut) { //Account Locked lblMessage.Text = "Your account is locked."; } else { //Invalid username or password lblMessage.Text = "Invalid username or password."; } } else { //Invalid username or password lblMessage.Text = "Invalid username or password."; } }
VB.Net Dim isValid As Boolean = Membership.ValidateUser(txtUserName.Text, txtPassword.Text) If Not isValid Then Dim user As MembershipUser = Membership.GetUser(txtUserName.Text) If user IsNot Nothing Then 'User exists If Not user.IsApproved Then 'Account Unapproved lblMessage.Text = "Your account is not approved." ElseIf user.IsLockedOut Then 'Account Locked lblMessage.Text = "Your account is locked." Else 'Invalid username or password lblMessage.Text = "Invalid username or password." End If Else 'Invalid username or password lblMessage.Text = "Invalid username or password." End If End If
بنابراین در راه حل بالا شما به راحتی می توانید به طور دقیق علت login نشدن در کتابخانه membership،asp.net را شناسایی کنید.
- ASP.net
- 2k بازدید
- 7 تشکر