LoginStatus控件无法使用数据库进行基本验证的日志记录

本文关键字:验证 记录 日志 控件 数据库 LoginStatus | 更新日期: 2023-09-27 18:21:34

我在login.aspx页面中有一个登录控件,它通过使用存储过程(下面给出的Validation()方法)在数据库中检查用户名密码来验证用户

  protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
{
    if (Validation(Login1.UserName, Login1.Password))
    {
        Session["Logged"] = "Yes";
        Session["User"] = "Admin";
        Session["msg"] = "";
        e.Authenticated = true;
        Response.Redirect("/umkgp/admin/gallerymanager.aspx");
      //  "Successfully Logged In";
    }
     else
    {
        e.Authenticated = false;
    }
  }

现在,当我使用LoginStatus控件时,它不会将显示文本从登录更改为注销。我知道LoginStatus控件基于IsAuthenticated属性。在我的情况下,我想IsAuthenticated没有设置为true。如何使其发挥作用。这是登录状态控制的代码

 <asp:LoginView ID="HeadLoginView" runat="server" EnableViewState="false">
                <AnonymousTemplate>
                    [ <a href="/umkgp/admin/admin.aspx" ID="HeadLoginStatus" runat="server">Log In</a> ]
                </AnonymousTemplate>
                <LoggedInTemplate>
                    Welcome <span class="bold"><asp:LoginName ID="HeadLoginName" runat="server" /></span>!
                    [ <asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LogoutText="Log Out" LogoutPageUrl="/umkgp/home.aspx" OnLoggingOut="Logout_Click"/> ]
                </LoggedInTemplate>
            </asp:LoginView>

(n.b.我没有使用成员资格或角色)。请帮助我…

LoginStatus控件无法使用数据库进行基本验证的日志记录

替换此行

 Response.Redirect("/umkgp/admin/gallerymanager.aspx");

有了这个

     FormsAuthentication.RedirectFromLoginPage(Login1.UserName,false);
   //this will tell the asp.net who logged in and it will redirect to the requested page or the default page


更新:如果您想设置默认位置,请打开您的web.config文件并找到身份验证标签

并以这种方式修改

<authentication mode="Forms">
  <forms defaultUrl="~/mydefaultpage.aspx"/>
</authentication>

来自MSDN

默认情况下,登录控件与ASP.NET成员身份和ASP.NET表单身份验证有助于自动化的用户身份验证网站。

您可以获得如何在msdn登录控制中实现登录控制的概述

正如您所说,您没有使用asp.net成员资格,因此系统不知道您已登录并有内部记录。

为了解决这个问题,你应该创建一个自定义的会员资格提供商,它会包装你的验证代码,然后所有其他asp.net会员资格集成控件都会自动与你的会员服务提供商一起工作:

  • http://www.google.co.uk/search?q=asp.net+custom+membershipprovider