登录验证全局控制的几种方式总结(session)
登录验证全局控制的几种方式总结(session)
发布时间:2016-12-28 来源:查字典编辑
摘要:一,在一个公共类里创建一个公共方法,然后需要验证的页面都调用这个方法//在此例子中,就是在入口函数里调用CheckLogin()方法;复制代...

一,在一个公共类里创建一个公共方法,然后需要验证的页面都调用这个方法

//在此例子中,就是在入口函数里调用CheckLogin()方法;

复制代码 代码如下:

public static string SeUserID

{

get

{

return HttpContext.Current.Session["SeUserID"].ToString();

}

set

{

HttpContext.Current.Session["SeUserID"] = value;

}

}

/// <summary>

/// 检查用户是否登录,如果未登录就转到登录页面

/// </summary>

public static void CheckLogin()

{

if (SeUserID == "" || SeUserID == "0")

{

HttpContext.Current.Response.Redirect("ForeignFirms.aspx");

//HttpContext.Current.Response.Write("<script>window.open('');alert('登陆失效,请重新登陆');</script>");

}

}

复制代码 代码如下:

//在cs页面调用验证方法

protected void Page_Load(object sender, EventArgs e)

{

Commom.CommonFunction.CheckLogin();//验证登陆信息

if (!IsPostBack)

{

GetData();

value = Request.QueryString["id"].ToString();

if (value != "0")

{

GetEdit();

}

}

}

二,通过Global文件来控制

复制代码 代码如下:

protected void Session_Start(Object sender, EventArgs e)

{

Session["sqlConnectionString"] = "uid=Username;pwd=password;database=MyTest;server=Localhost;Connect Timeout=300";

}

--读取的方法,在代码中的应用

复制代码 代码如下:

String strConnection=Session["sqlConnectionString"].ToString();

sqlConnection_1=new SqlConnection(strConnection);

三,通过Web.Config文件配置

//配置Web.Config文件的方法如下:

在Web.Config文件的<system.web></system.web>节点中添加如下代码,设置Session的生命周期为10分钟。

复制代码 代码如下:

<sessionState mode="InProc" timeout="10"></sessionState>

在web.config文件中设置Session时,可以设置以下几个参数:

复制代码 代码如下:

Mode//该参数用于设置存储会话状态。状态包括Off、Inproc、StateServer和SqlServer。

Off//表示禁用会话状态

Inproc//表示工作进程自身存储会话状态

StateServer//表示将把会话信息存放在一个单独的ASP.NET状态服务中

SqlServe//r表示将把会话信息存放在SQL Server数据库中。

StateConnecitonString//该参数用于设置ASP.NET应用程序存储远程会话状态的服务器名,默认名为本地。

Cookieless//当该参数值设置为True时,表示不使用Cookie//会话标识客,反之设置为False时,标识启动Cookie会话状态。

SqlConnectionString//该参数用于设置SQL Server数据库连接。

Timeout//该参数用于设置会话时间,超过该期限,会自动中断会话,默认设置为20。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新C#教程学习
热门C#教程学习
编程开发子分类