ASP.NET 使用PageBase来控制用户登陆,有时候发现在Web.Config文件里面写了禁止匿名登录的代码以后,要么就全部都登录不了网页,要么就是知道页面的名称,如Default.Aspx,然后在地址栏直接输入路径然后回车就进入系统了,可能是配置文件没有写好,总之觉得这种方法不是很好,还是使用PageBase来判断IE产生的Session数量要好一点,如下:

这个PageBase类:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

/// <summary>
///PageBase 的摘要说明
/// </summary>
public class PageBase : System.Web.UI.Page
{
    public PageBase()
    {
        //
        //TODO: 在此处添加构造函数逻辑
        //
    }

    private string sessionUserName;
    private string sessionPassword;

  
    public string SessionUserName
    {
        get { return this.sessionUserName; }
    }
    public string SessionPassword
    {
        get { return this.sessionPassword; }
    }  

    protected override void OnInit(EventArgs e)
    {
        if (base.Session["UserName"] == null || Session.Count < 2)
        {
            Response.Redirect("~/Login.aspx");
        }
        else
        {
            this.sessionUserName = Session["UserName"].ToString();
            this.sessionPassword = Session["Password"].ToString();           
        }
    }
}

 

然后在主页面里面继承这个PageBase类,

public partial class _Default : PageBase
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
}

相关文章:

  • 2022-12-23
  • 2021-12-15
  • 2022-12-23
  • 2021-06-29
  • 2022-12-23
  • 2021-05-25
  • 2021-07-25
猜你喜欢
  • 2021-12-29
  • 2022-02-20
  • 2021-05-23
  • 2021-11-19
  • 2021-04-21
  • 2021-07-30
  • 2022-12-23
相关资源
相似解决方案