Session内置对象在动态网站开发中的应用

更新时间:2024-03-13 作者:用户投稿原创标记本站原创 点赞:6474 浏览:21502

摘 要

作者从ASP.NET平台中所提供的内置对象出发,介绍了session的基本知识及工作过程,然后重点阐述了Session内置对象在动态网站开发中系统登陆模块中的技术应用及注意事项.

【关 键 词 】ASP.NET Session 系统登陆 响应时间

在ASP.NET开发中VS2008提供了多个内置对象,如Response,Request,Session,Application.其中Request对象和Response对象用来实现怎么写作器端与客户端浏览器数据的交换,而Application对象与Session对象则被用来在怎么写作器端与用户之间或ASP.NET文件之间传递数据.二者又略有不同,Application对象是一个公有变量,允许多个用户对它访问.Session是个局部变量,通常用来存放客户端用户的一次会话信息.据于此,常用来在网站开发中用来保存用户登陆的一些相关信息.便于实现参数传递.

1.Session基本含义及用法

Session对象的主要用途是保存信息的.当一个用户第一次登录网站时,系统会为其分配一个Session,将登陆的相关信息如姓名保存到SESSION变量中,只有当该客户退出时,或者Session生命周期结束时,信息才会被清除.

使用方法:

1.1 保存信息

Session对象将信息存储在变量中,常量、字符串、甚至任何合法的表达式都可以作为Application对象的存储内容.

语法格式:

Session [“Session名称”]等于变量|常量|字符串表达式

Session[“sname”]等于TextBox1.Text;//将文本框的内存容保存在Session[“sname”]变量中.

1.2 读取信息

语法格式:

Session变量值可以在使用时随时读取,读取的语法格式如下:

变量名等于Session [“Session名称”];

TextBox1.Text等于 Session[“sname”];//将保存的Session[“sname”]的内存取出来赋给文本框显示.

2.Session的工作过程

当用户第一次访问一个网站时,怎么写作器自动会给这个用户分配一个SESSION ID号,浏览器一般都支持Session,当用户每次访问网站时都发送这个SessionID给怎么写作器,怎么写作器就会根据Session的协议,就知道次http请求是哪个用户发的.也就识别了用户.当用户在WEB应用程序中间跳转时,存储在Session对象中的变量不会清除,而会始终存在.下一个页面通过Session变量会接收到先前用户的相关信息.如果一段时间后,该用户还没有会话,则Session对象的值会自动清空.即当会话过期或被放弃后,怎么写作器将终止了该会话.当然如果WEB怎么写作器停止工作,Session的值也将被清空.

3.Session在动态网站开发中的应用

Session在WEB技术中占有非常重要的作用.由于网页是一种无状态的连接程序,因此你无法得知用户的浏览状态.因此我们必须通过Session记录用户的有关信息,以供用户再次以此身份对web怎么写作器提供要求时作确认.Session的典型应用是存放用户的登陆信息,如用户名,,权限角色等信息.下面以在线聊天系统为例说明其在登陆模块中的技术应用.

(1)在VS2008中,建立两个WEB页,用户登陆login.aspx,系统首页index.aspx,,在login.aspx设计视图中置入两个文本框,ID分别为txtName,txtPwd,两个命令按扭,一个确定一个取消.

(2)双击确定按扭,进入代码页login.aspx.cs

protected void Button1_Click(object sender, EventArgs e)

{ string str1 等于 "Data Source等于.;Initial Catalog等于liaotian;User ID等于sa;Password等于123456";

SqlConnection sqlstr 等于 new SqlConnection(str1);

sqlstr.Open();

SqlCommand sqlcmd 等于 new SqlCommand("select * from user where sname等于'" + TextBox1.Text + "'", sqlstr);

SqlDataReader dr 等于 sqlcmd.ExecuteReader();

dr.Read();

if (dr.HasRows)

{ if (dr["password"].ToString() 等于等于 TextBox2.Text)


{ Session["name"] 等于 TextBox1.Text;

Response.Redirect("index.aspx");

}

else

Response.Write("");

}

else

{ Response.Write("");

}

sqlstr.Close();

即完成连数据库,只有当用户名和都正确进入网站的首页.同时将登陆的用户名保存在了Session变量中.

(3)在index.aspx中,系统接收来自登陆页传过来的Session值,同时欢迎其来到网站.

protected void Page_Load(object sender, EventArgs e)

{

Label1.Text等于”欢迎”+Session["name"].ToString()+”光临网站”;

}

4.结束语

Session的作用强大,在实际操作和网站开发建设中应用广泛,还可以在程序配置文件中设置相应的响应时间等.

作者简介

肖亚红,湖南邵阳人.现为湖南汽车工程职业学院(原株洲职业技术学院)讲师.研究方向为计算机软件开发.

作者单位

湖南汽车工程职业学院(原株洲职业技术学院) 湖南省株洲市 412001