原文地址:
http://www.frontfree.net/view/article_742_page1.html
阅读本文章之前的准备
阅读本文章前,需要读者对以下知识有所了解。否则,阅读过程中会在相应的内容上遇到不同程度的问题。
懂得ASP/ASP.NET编程 了解ASP/ASP.NET的Session模型 了解ASP.NET Web应用程序模型 了解ASP.NET Web应用程序配置文件Web.config的作用、意义及使用方法 了解Internet Information Services(以下简称IIS)的基本使用方法 了解如何在Microsoft SQL Server中创建一个数据库。
Session模型简介
Session是什么呢?简单来说就是服务器给客户端的一个编号。当一台WWW服务器运行时,可能有若干个用户浏览正在运正在这台服务器上的网站。当每个用户首次与这台WWW服务器建立连接时,他就与这个服务器建立了一个Session,同时服务器会自动为其分配一个SessionID,用以标识这个用户的唯一身份。这个SessionID是由WWW服务器随机产生的一个由24个字符组成的字符串,我们会在下面的实验中见到它的实际样子。
这个唯一的SessionID是有很大的实际意义的。当一个用户提交了表单时,浏览器会将用户的SessionID自动附加在HTTP头信息中,(这是浏览器的自动功能,用户不会察觉到),当服务器处理完这个表单后,将结果返回给SessionID所对应的用户。试想,如果没有SessionID,当有两个用户同时进行注册时,服务器怎样才能知道到底是哪个用户提交了哪个表单呢。当然,SessionID还有很多其他的作用,我们会在后面提及到。
除了SessionID,在每个Session中还包含很多其他信息。但是对于编写ASP或ASP.NET的程序与来说,最有用的还是可以通过访问ASP/ASP.NET的内置Session对象,为每个用户存储各自的信息。例如我们想了解一下访问我们网站的用户浏览了几个页面,我们可能在用户可能访问到每个的页面中加入:
程序代码: |
<%If Session("PageViewed") = ""Then Session("PageViewed") = 1Else Session("PageViewed") = Session("PageViewed") + 1End If%>
|
通过以下这句话可以让用户得知自己浏览了几个页面:
程序代码: |
<%Response.Write("You have viewed " & Session("PageViewed") & " pages")%>
|