使用SQL Server数据库保存Session

一.设置数据库

方法1:向数据库中添加session相关信息,可以使用官方工具

命令提示符cmd中执行:

cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

aspnet_regsql.exe -S 【服务器】 -U 【登录名】 -P 【密码】 -d 【数据库名】 -ssadd -sstype c

例如:

aspnet_regsql.exe -S 127.0.0.1 -U sa -P 123456 -d test -ssadd -sstype c

提示

QQ截图20131119140124

成功

方法2:直接sql脚本倒入

执行方法1后,再生成脚本一下方便以后使用,直接执行脚本和方法1结果一样。

需要执行两个脚本一个脚本是配置数据库,另一个脚本是添加数据库作业,session的过期就是靠数据库作业处理。要不然不会删除session。

脚本下载

二.配置web.Config

<sessionState
   mode="SQLServer"
   allowCustomSqlDatabase="True"
   sqlConnectionString="server=127.0.0.1; database=test;uid=sa ;pwd=123456;"
   timeout="20"   
/>
解释:
mode,会话状态模式,SQLServer为存储到SQLServer数据库。
allowCustomSqlDatabase,值指定会话状态 SQL 数据库是否可以是自定义数据库(而不是 ASP.NET 默认数据库)。 如果为 false,则不能指定初始目录或数据库作为 sqlConnectionString 特性的值。 默认会话状态 SQL 数据库为 ASPState 数据库。默认false
sqlConnectionString,连接字符串
完成。
具体sessionState配置信息解释查看官方文档http://msdn.microsoft.com/zh-cn/library/h6bb9cz9(v=vs.100).aspx
注意:启动QSL Server代理不然不会删除session,打开数据库管理最后一个就是代理
 
posted @ 2013-11-19 14:36  日如梭  阅读(4448)  评论(1编辑  收藏  举报