什么是会话和会话变量?

时间:2010-04-21 05:17:27

标签: .net asp.net asp.net-mvc asp.net-2.0

你能指导我什么是会话和会话变量吗?我不需要比较ASP会话和ASP.NET会话,因为我对ASP一无所知。

我也看过很多关于会话类型的文章。但我还是无法正确理解什么是会话以及ASP.NET中的会话变量是什么?

5 个答案:

答案 0 :(得分:16)

会话 - 是跟踪每个用户的请求。因此,每次发布网页时,asp.net运行时都会知道请求来自哪个用户。 现在,因为HTTP是无状态协议,意味着来自同一用户的每个请求就像是对它的新请求。 因此,维护一个会话Asp.Net有Session变量。

会话变量 - 会话变量是asp.net运行时在服务器端维护的变量。每个用户都由一个名为SessioID的唯一编号标识。在第一个用户请求之后,此会话存储在客户端的cookie中(如果浏览器支持cookie)。当客户端回发页面时,此cookie在请求标头中可用。所以现在服务器知道这个用户请求来自哪个用户。除此之外,您还可以在会话变量中存储用户特定信息,这些信息将在服务器端提供。

答案 1 :(得分:6)

答案 2 :(得分:4)

来自Here

ASP.NET会话状态使您能够在用户在Web应用程序中导航ASP.NET页面时存储和检索用户的值。

HTTP是无状态协议。这意味着Web服务器将页面的每个HTTP请求视为独立请求。服务器不保留先前请求期间使用的变量值的知识。 ASP.NET会话状态在有限时间窗口内将来自同一浏览器的请求标识为会话,并提供了在该会话期间持久保存变量值的方法。

默认情况下,为所有ASP.NET应用程序启用ASP.NET会话状态。

会话变量

会话变量存储在通过HttpContext.Session属性公开的SessionStateItemCollection对象中。在ASP.NET页面中,当前会话变量通过Page对象的Session属性公开。

答案 3 :(得分:2)

阅读本文,维基百科上的Web服务器会话管理:

http://en.wikipedia.org/wiki/Session_management#Web_server_session_management

希望有所帮助..

伊恩

答案 4 :(得分:-2)

会话将用户信息存储在服务器端,如uid和pass。 Session是服务器端状态管理技术。首次登录时,通常会为您分配一个存储在cookie上的唯一会话ID(如果支持cookie),该ID随后会随每个请求一起传回服务器,以便它可以检索您的会话。