关于ASP.NET编程里Session的用法
问题:
我做登陆页的的时候,一般是登陆成功了就产生一个session,然后登陆以后的界面就判断session为不为空,但是session的有效时间只有20分钟,也就是说登陆一次只能用20分种对吗?20分钟后又要登陆,这样好像不太好啊,所以我想请问一下怎么完善一下才好,是改session的有效时间吗??20分钟肯定不够,如果都要改有效时间,那为什么它默认的有效时间才20分钟,这个程序语言也弄的太不好了,是吗,希望高手指点
解答:
不管有没有登录.只要一打开网站在服务器上就会产生一个会话(Session),Sssion的有效时间是指从上次访问服务器到这个时间之内如果没有理次访问的话才会失效.
比如你 10:00 打开了一个网站.网站服务器上产生了一个与你对应的Session,
Session失效时间应该是 10:20....你在 10:05 分的时候在刚才打开的网站上点击了链接或刷新了一下这个网页.那你对应的Session 就更新了.新的失效时间是 10:25 分..
所以你打开了一个网站的网页只有在20分钟内没有再向服务器发送数据的操作Session 才会失效...
session有效时间默认为20分钟,这个时间是指,当用户登录后,如果没有任何动作,即不在web上有请求.将维持这个用户的身份有效时间是20分钟,如果这个用户一直与web有请求操作,那么,这个时间一直没有算在20分钟内,即,如果用户登录后,即便操作一个小时,那么也不会出现超时,除非用户与服务器之间掉线
Web.config文件中的Session配置信息
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
timeout 可以改时间!