在使用Session保存数据时,有时可能会因为改写BIN目录下的某个文件或者其他原因而引起Session中的数据丢失,由于在WEB.CONFIG中SESSION的配置中mode属性是用来设置Sessin保存状态的。而默认的参数为Inproc该参数使Session的保存状态依赖于ASP.NET进程。这个进程不稳定,在某些事件发生时,可能会引起进程的重启,而该进程重启后会导致Session的丢失。
为了防止Session的丢失,可以把mode属性的参数设置为StateServer,StateServer是本机中的一个服务,而该服务除非是在电脑重启或StateService崩溃的时候Session才会丢失。设置该参数的方法如下。
1,在web.config文件中设置sessionState中的mode参数为StateServer。
2,打开“控制面板”中“管理工具”选项。
3,在“管理工具”中打开“服务”选项,在“服务”选项中找到“ASP.NET状态服务(asp.NET StateService)”,并启动该服务。