session
在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下)。因此,在需要保存用户数据时,服务器程序可以把用户数据写到用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。
【Session使用】
一、ASP.NET中
用 session之前先加引用
using System.Web.SessionState;
System.Web.SessionState命名空间提供可将特定于某个单个客户端的数据存储在服务器上的一个 Web 应用程序中的类和接口。会话状态数据用于向客户端提供与该应用程序保持持久连接的样式。状态信息可以存储在本地进程内存中,或者,对于网络场配置,也可以使用 ASP.NET 状态服务或 SQL Server 数据库将其存储在进程之外。会话状态可以与不支持 Cookie 的客户端一起使用。ASP.NET 可以配置为对客户端和服务器之间传输的 URL 字符串中的会话 ID 进行编码。
在加一个IRequiresSessionState
刚刚接触.net web端的朋友都会被Session坑过,莫名其妙的不能读取Session数据,后来知道原来有IRequiresSessionState这个接口,不继承的就不能读取Session里面的数据,知道这个以后呢,也不清楚里面具体是如何实现的。对此一直不甘心,于是查了各方面的资料终于模拟出来了。
写入session 一般用在账号登陆时 网页记录账号时用
//第一次登陆 则以Session的方式记录到服务器
HttpContext.Current.Session["FName"] = userModel.FName;
HttpContext.Current.Session["FId"] = userModel.FId;
HttpContext.Current.Session["FAccount"] = userModel.FAccount;
HttpContext.Current.Session["FType"] = userModel.FType;
从Session中读取数据 一般用于读取账号内的信息 看有没有登陆过账号
public void GetSessin(HttpContext context)
{
dynamic ObjJson = new ExpandoObject();
ObjJson.success=true;
ObjJson.FType = context.Session["FType"].ToString();
ObjJson.FName = context.Session["FName"].ToString();
context.Response.Write(JsonConvert.SerializeObject(ObjJson));
}
浙公网安备 33010602011771号