Basepage类+Session通用用户登录权限控制

SessionManager.cs

 
  
1 using System.Web;
2
3   public class SessionManager < T >
4 {
5 public static T GetSessionObject( string key)
6 {
7 object obj = HttpContext.Current.Session[key];
8 if (obj == null )
9 return default (T);
10 else
11 return (T)obj;
12 }
13
14 public static void SetSessionObject( string key, T obj)
15 {
16 HttpContext.Current.Session[key] = obj;
17 }
18 }
19  

SessionData.cs

 
  
1 using Models;
2
3   public class SessionKey
4 {
5 public const string UserInfo = " usrelogin " ;
6 }
7
8   public class SessionDate
9 {
10 /// <summary>
11 /// 获取session中的用户信息
12 /// </summary>
13 /// <returns></returns>
14   public static UserLogin GetUserInfo()
15 {
16 UserLogin userInfo = SessionManager < UserLogin > .GetSessionObject(SessionKey.UserInfo);
17 if (userInfo == null )
18 {
19 userInfo = new UserLogin();
20 // 把内容储存到应用程序
21   SessionManager < UserLogin > .SetSessionObject(SessionKey.UserInfo, userInfo);
22 }
23 return userInfo;
24 }
25 /// <summary>
26 /// 重新设置session中的用户信息
27 /// </summary>
28 /// <param name="userInfo"></param>
29   public static void SetUserInfo(UserLogin userInfo)
30 {
31 SessionManager < UserLogin > .SetSessionObject(SessionKey.UserInfo, userInfo);
32 }
33
34 /// <summary>
35 /// 清除session中用户信息
36 /// </summary>
37   public static void ClearUserInfo()
38 {
39 SessionManager < UserLogin > .SetSessionObject(SessionKey.UserInfo, null );
40 }
41
42 /// <summary>
43 /// 是否登录
44 /// </summary>
45 /// <returns></returns>
46   public static bool IsLogin()
47 {
48 bool ret = false ;
49 UserLogin userInfo = SessionManager < UserLogin > .GetSessionObject(SessionKey.UserInfo);
50 if (userInfo != null )
51 ret = true ;
52 return ret;
53 }
54 }

BasePage.cs

 
  
1 using System;
2   using System.Web.UI;
3
4   public class BasePage:Page
5 {
6 protected void Page_Unload( object sender, EventArgs e)
7 {
8
9 }
10
11 protected override void OnPreInit(EventArgs e)
12 {
13 base .OnPreInit(e);
14 if ( ! SessionData.IsLogin())
15 {
16 Response.Redirect( " ~/Web/Default.aspx " );
17 }
18 }
19 }

UserLogin为实体类。

在页面后台中直接继承BasePage就可以了。

转载于:https://www.cnblogs.com/ChengWeidong/archive/2010/09/16/1827722.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值