Session是服务器端状态保持的一种机制,保存在服务器端的内存中,每个用户有一个SessionID,服务器每次响应,都会把SessionID放到Cookie中返回给浏览器(该Cookie不指定过期时间,放在客户端的内存中,关闭浏览器后失效)。客户端请求都会通过该Cookie发送SessionID。
设置Session:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace 类库名.WebApp { public partial class SessionDemo : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { string name=Request.Form["txtName"]; Session["userName"] = name; //Session.Timeout = 30; //设置Session过期时间,单位是分钟,默认是20分钟。Session是滑动过期,用户每次访问都会刷新过期时间。 //Session["userName"] = null; //清空Session Response.Redirect("Test.aspx"); } } } }
获取Session:using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace 类库名.WebApp { public partial class Test : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (Session["userName"] != null) { Response.Write(Session["userName"].ToString()); //获取Session } else { Response.Redirect("Login.aspx"); } } } }