国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net BasePage類+Session通用用戶登錄權(quán)限控制

2024-07-10 12:42:12
字體:
供稿:網(wǎng)友
但是很多人都喜歡在
代碼如下:
protected void Page_Load(object sender, EventArgs e)
{}

里面來寫代碼,甚至在某些按鈕里面寫判斷session是否存在~~
這樣當(dāng)然是能實現(xiàn)效果的,問題就在,如果有1000個頁面~~你需ctrl+C。。。Ctrl+V 很多次~~~
我的思路就是寫一個BasePage類繼承 System.Web.UI.Page
代碼如下:
public class BasePage : System.Web.UI.Page
{
//pageunload事件,并不是指瀏覽器關(guān)閉,而是指頁面關(guān)閉,所以刷新的時候,依然會執(zhí)行以下事件
protected void Page_Unload(object sender, EventArgs e)
{
}
protected override void OnPreInit(EventArgs e)
{
base.OnPreInit(e);
if (!SessionData.IsLogin())
{//這里寫 跳轉(zhuǎn)到登陸頁面:例如:
Response.Redirect(string.Format("~/ReLogin.aspx?Page={0}", Request.Path));
}}

為什么我這里要帶 Page 參數(shù),就是為了在登錄成功以后可以返回到登錄前的那一個頁面
另外我也貢獻一個SessionData類:
代碼如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using ExpressPlatform.Common;
namespace ExpressPlatform.Web.AppCode
{
public class SessionKey
{
public const string UserInfo = "user";
}
/// <summary>
/// 所有session中的數(shù)據(jù),在該類管理
/// </summary>
public class SessionData
{
/// <summary>
/// 獲取session 中的 用戶信息
/// </summary>
/// <returns></returns>
public static MdlSessionCustomerInfo GetUserInfo()
{
MdlSessionCustomerInfo userInfo = SessionManager<MdlSessionCustomerInfo>.GetSessionObject(SessionKey.UserInfo);
if (userInfo == null)
{
userInfo = new MdlSessionCustomerInfo();
//把內(nèi)容儲存到應(yīng)用程序
SessionManager<MdlSessionCustomerInfo>.SetSessionObject(SessionKey.UserInfo, userInfo);
}
return userInfo;
}
/// <summary>
/// 重新設(shè)置session 中的用戶信息
/// </summary>
/// <param name="userInfo"></param>
public static void SetUserInfo(MdlSessionCustomerInfo userInfo)
{
SessionManager<MdlSessionCustomerInfo>.SetSessionObject(SessionKey.UserInfo, userInfo);
}
/// <summary>
/// 清楚session中用戶信息
/// </summary>
public static void ClearUserInfo()
{
SessionManager<MdlSessionCustomerInfo>.SetSessionObject(SessionKey.UserInfo, null);
}
/// <summary>
/// 是否登入
/// </summary>
/// <returns></returns>
public static bool IsLogin()
{
bool ret = false;
MdlSessionCustomerInfo userInfo = SessionManager<MdlSessionCustomerInfo>.GetSessionObject(SessionKey.UserInfo);
if (userInfo != null)
ret = true;
return ret;
}
}
}

代碼如下:
public class BasePage : System.Web.UI.Page
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 漠河县| 三穗县| 江北区| 辽源市| 锡林浩特市| 柘荣县| 娄烦县| 云霄县| 富源县| 伊吾县| 吉安市| 平顺县| 汶上县| 乐安县| 朝阳区| 桦川县| 青海省| 冷水江市| 文安县| 梁河县| 桦南县| 罗甸县| 莱西市| 易门县| 腾冲县| 抚远县| 涟源市| 新津县| 乃东县| 邢台市| 德州市| 清丰县| 凤山市| 军事| 岚皋县| 万安县| 隆回县| 元谋县| 赞皇县| 喀什市| 孟连|