session的保存方式.
在webconfig中可以设置session回话状态的保存方式.
默认的是InProc,在进程中保存,此保存方式的好处是读取速度快.当然,由于保存在进程中,所以session可能在某时某刻因为进程的关闭,丢失session.
可以选择为StateServer,是保存在服务器中的状态服务中,可已在管理工具-->服务 中查看
如果设置成StateServer,首先要在存放在session中的类设置成可序列化的类,否可会报错.
//可序列化类
[Serializable()]
public class ETSUser
{
#region 变量
private int userId;
private string email;
private int sex;
private System.DateTime birthday;
private string passwordQuestion;
private string passwordAnswer;
在声明类的上方[Serializable()]或者[Serializable]
然后设置状态服务为开启.这样运行网站,session就会保存在状态服务中了.如果session不过期,服务器不重启,session丢失的现象会比InProc中少.
在iis7中也可以更改session存放方式.iis7的设置会自动更改发布在iis中web项目的config文件.