ASP.NET判断用户是否登录

如题所述

前段时间因为一特定需求写了下面代码。需求如下:在用户访问本站所有aspx页面时,首先判断用户Session["login"]是否存在,如果不存在,说明该用户未登陆,要让该用户跳转到指定的页面。所以想写一个Session的过滤器,思前想后应该写一个继承IHttpModule的处理类。试验了几种方式发现只有将方法加在.AcquireRequestState中才能读取session。共享代码如下 MyModule.cs using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;/// <summary>/// MyModule 的摘要说明/// </summary>public class MyModule:IHttpModule{public MyModule(){//// TODO: 在此处添加构造函数逻辑//} #region IHttpModule 成员 public void Dispose(){throw new Exception("The method or operation is not implemented.");} public void Init(HttpApplication context){context.AcquireRequestState += new EventHandler(application_AcquireRequestState);}public void application_AcquireRequestState(object sender, EventArgs e){HttpApplication app = (HttpApplication)sender;if (app.Context.Session["userName"] == null || app.Context.Session["userName"].ToString().Trim() == ""){app.Context.Server.Transfer("login.aspx");}}#endregion webconfig 配置如下 <system.web> <httpModules>
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网