Session可以通过SQLServer来管理。具体配置如下:
1、运行Framewor安装目录下的InstallSqlState.sql文件,framework的安装目录为C:/WINDOWS/Microsoft.NET/Framework/...
2、这时会提示错误,因为该应用没有注册。此时需要在命令行下注册该应用,运行如下命令:
aspnet_regsql.exe -ssadd -sstype c -d <Database Name> -S <SQL Server IP> -U <User Name> -P <Password>
会话定义成功,但是会提示在web应用中进行相应的配置,此时查看SQLServer会发现增加了数据库ASPState,但是没有表。
3、在命令行下运行如下命令:
aspnet_regsql.exe -ssadd -sstype p -S <SQL Server IP> -U <User Name> -P <Password>
例子:aspnet_regsql.exe -ssadd -sstype p -S 61.135.163.94 -U DbUser -P DbPassWord
该命令对此应用进行了持久化操作。这时会看到ASPState数据库里面多了两张表,ASPStateTempSession就可以用来保存Session。
应用时,需要在webconfig中添加如下配置:
配置节点如下:
<sessionState mode="SQLServer"
sqlConnectionString="server=<Server IP>;database=<Database Name>;uid=<User Name>;pwd=<Password>;"
allowCustomSqlDatabase="True"
cookieless="false"
timeout="20" />