VB.net web开发中的session

在牛腩新闻系统中,验证码的图片绘画中使用到了session这个东西。一开始也没太在意,只是纯粹当做牛腩使用的一个类似于变量的东西,没有实在的去了解它。而只是单纯的知道怎么用它而已。这两天无意中查了一下Cookie这个东西,才发现原来session在网页开发中也是一个非常基础的东西。

session翻译为会话状态,指的是当用户向服务器请求服务一直到服务结束的这段时间内服务器为当前用户分配的一块存储区域.网上给的解释为我们打电话的过程,从接通电话一直到挂断电话的这个过程称为一个会话.而session其实不止是一个简单的一个会话,还包括了为这个会话提供的一块为该用户存储区域.所以,接通电话到挂断电话在加上通话线路才算是一个完整的session.还可以换种说法,我们去澡堂洗澡,交钱之后会得到一个带锁的箱子,用于存储我们的私人物品,在你不出澡堂之前这个箱子都是属于你的,这期间你可以取、放你的东西,但是别人却无法使用。这个箱子的功能就是session。ok,文字上的概念到这里!这里对session的属性不再复述,网上到处都是.

先看如下一段代码:

protected void Button1_Click(object sender,EventArgs e)
    {
        if (TextBox1.Text == "111" && TextBox2.Text == "222")
        {
            Session["Name"] ="姚明";
          
        }
    }
//以上是将信息写入session,以下是从session中取出信息
 protected void Page_Load(object sender,EventArgs e)
    {
        if (Session["Name"] != null)
        {
            Label1.Text = Session["Name"] + "您好!";
       }
}

从上面对代码片段可以看出,session的使用很像hashtable和hashmap。是key和值的关系,可以通过key去取得对应的值。而在会话没有关闭的时候,session就一直都在,不论你打开几个网页。因此,就可是实现网页之间的通信,以及一些用户信息的保存。这里就又类似有全部变量的概念了。

这里涉及到了一个会话关闭的问题,有关于session的一个属性timeout,这个属性设定了当网页不处在活动状态多少时间后可以关闭这个session。所以需要注意一下。另外,和cookie之间的关系和区别,目前还没太了解,下次讲了啊。

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...