Page_Load事件中的表单认证

本文关键字:表单 认证 事件 Load Page | 更新日期: 2023-09-27 18:15:53

我有一个名为frmLogin的表单。我在Login_1Authenticate事件处理程序中编写了代码,用于检查输入的用户名和密码的安全级别。然后,根据安全级别,它将显示或不显示链接在我的主要形式称为frmMain。如果它是安全级别"A"我想完全控制,但如果它的安全级别"U"那么我想链接按钮和图像按钮从frmMain删除。其中两个要禁用的示例是:

linkbtnEmployee
imgbtnNewEmployee

linkbtnViewUserActivity
imgbtnViewUserActivity

我需要为Page_Load事件编写代码,但我不确定如何编写它。下面是我的frmLogin页面的代码:

public partial class frmLogin : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
    {
        dsUser dsUserLogin;

        string SecurityLevel;

        dsUserLogin = clsDataLayer.VerifyUser(Server.MapPath("PayrollSystem_DB.mdb"),
                         Login1.UserName, Login1.Password);

        if (dsUserLogin.tblUserLogin.Count < 1)
        {
            e.Authenticated = false;
            return;
        }

        SecurityLevel = dsUserLogin.tblUserLogin[0].SecurityLevel.ToString();

        switch (SecurityLevel)
        {
            case "A":
                // Add your comments here
                e.Authenticated = true;
                Session["SecurityLevel"] = "A";
                break;
            case "U":
                // Add your comments here
                e.Authenticated = true;
                Session["SecurityLevel"] = "U";
                break;
            default:
                e.Authenticated = false;
                break;
        }
    }
}

Page_Load事件中的表单认证

如果你想让它们不可见,使用:

linkbtnEmployee.Visible = false;
imgbtnNewEmployee.Visible = false;

请阅读http://msdn.microsoft.com/en-us/library/ff647070.aspx

来理解"ASP中的表单认证"。NET 2.0 "