首页 新闻 会员 周边 捐助

session失效

0
悬赏园豆:50 [已关闭问题]

 一网站,有时过不了6,7分钟,session失效,就要重新登陆。

而要求是6,7个小时登陆都不能失效。

怎么办呀?我web非常菜。

web.config:

 <sessionState
            mode="InProc"
            stateConnectionString="tcpip=127.0.0.1:42424"
            sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
            cookieless="false"
            timeout="1000"
    />

程序里还有好多地方用session的。

  if (Session["RowFilter_T_BG_Ysd"] != null)
            {
                filter = Session["RowFilter_T_BG_Ysd"].ToString();
            }
            if (Session["Sort_T_BG_Ysd.Column"] != null && Session["Sort_T_BG_Ysd.Direction"] != null)
            {
                order  = Session["Sort_T_BG_Ysd.Column"].ToString() + " " + Session["Sort_T_BG_Ysd.Direction"].ToString();
            }               

            Session["DT_T_BG_Ysd"] =
                DAL.BG.T_BG_Ysd.GetTopDT(1000, filter, order);
            Session["DTCount_T_BG_Ysd"] = DAL.BG.T_BG_Ysd.GetDTCount(null);
            Session["ViewCount_T_BG_Ysd"] = DAL.BG.T_BG_Ysd.GetDTCount(filter);

草样绿想的主页 草样绿想 | 初学一级 | 园豆:80
提问于:2009-09-18 16:19
< >
分享
其他回答(4)
0

可以设置下Session的保存时间,j就是application的Session   TimeOut时间

保存登陆用户信息不用Session,建议用cookie,或者直接用Form验证,其实From验证的原理也是保存的cookie.

love .net FrameWork | 园豆:175 (初学一级) | 2009-09-18 16:45
0

  mode="InProc" 这个模式有三种,StateServer、还有sqlserver 的。

stateserver状态是把session状态存储在服务器上,当然会消耗一定的性能。

http://blog.163.com/chen6666@126/blog/static/2804367420095230461120/

sqlserver 是把状态信息存储在数据库中,性能消耗更大,不推荐。

推荐用stateserver 。

或者用cookie也可以,用的话就是把session存储到cookie中,当发现session失效的时候,从cookie中得到信息再赋值给session。这个要用到httpModules 。

 

 

邢少 | 园豆:10926 (专家六级) | 2009-09-18 16:55
用过stateserver状态,当修改选中的数据时,但跳转到另一页面时,显示的是全部数据中的第一条记录,不正确,故又改成InProc模式。 web方面我是新手。 session["userid"]="admin"; Response.Cookies("userid").Value=session["userid"]; Response.Cookies("userid").Expires=DateTime.Now.AddDays(1); 这个要用到httpModules ,怎么做呢??能不能有个小例子。 尤其上面这样的代码怎么改写: Session["DT_T_BG_Ysd"] = DAL.BG.T_BG_Ysd.GetTopDT(1000, filter, order);
支持(0) 反对(0) 草样绿想 | 园豆:80 (初学一级) | 2009-09-18 17:26
0

避免 ASP_NET 的使用者仅短时间闲置,即被强制 Logout

http://www.cnblogs.com/WizardWu/archive/2008/07/31/1256907.html

WizardWu | 园豆:1402 (小虾三级) | 2009-09-19 00:53
0

用cookie保存吧,

 有的IIS 对session 做控制

Mr雨 | 园豆:1199 (小虾三级) | 2009-09-19 12:55
0

timeout="1000"

是设计时间的

东部小马 | 园豆:147 (初学一级) | 2009-09-19 21:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册