我明明把session 有效期设置成600---为的就是怕用户掉线,还得重新登陆
可是我测试时有时候几分钟就说我没有权限--因为我没有登陆,为什么session会不准确呢?有时候时间长,有时候时间短。。
看了看书,说能在SQL数据库里存储 session,请大家详细告诉我如何用数据库存session呢?
就是怎么配置<sessionState>呢?
小菜鸟先谢谢大家了!!
可是我测试时有时候几分钟就说我没有权限--因为我没有登陆,为什么session会不准确呢?有时候时间长,有时候时间短。。
看了看书,说能在SQL数据库里存储 session,请大家详细告诉我如何用数据库存session呢?
就是怎么配置<sessionState>呢?
小菜鸟先谢谢大家了!!
如: <system.web>
<sessionState timeout="300" mode="InProc"></sessionState>
</system.web>
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false" timeout="300" />
需要打开ASP.net状态服务.另外Session中存储的数据类型必须是可序列化的.http://www.builder.com.cn/2008/0323/780027.shtml
比如app 进程重启就可以导致session,application等对象丢失你要做web最好不要用session去验证用户有没有权限.你可以选择forms验证.
<sessionState timeout="300" mode="InProc"> </sessionState>
</system.web>把mode换成StateServer,Session保存在服务器上稳定一些,但是要占服务器资源,还需要打开状态服务