首页新闻找找看学习计划

asp.net session

0
悬赏园豆:20 [待解决问题]

我的asp.net项目有两个aspx页面,login.aspx和opente.aspx页面,当在longin.aspx页面登陆后,将username记录到session中,
然后跳转到opente.aspx 页面,在进入opente.aspx,触发page_load事件时判定Session["username"],结果发现HttpContext.Current.Session为null,HttpContext.Currentb不为null,
重新跳转到longin.aspx 发现Session["username"]不为null,可以取出之前存储的用户名,
反复验证了几次,发现只要是跳转到opente.aspx页面就HttpContext.Current.Session 为null,并且报异常:

只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态。还请确保在应用程序配置的 <configuration>\<system.web>\<httpModules> 节中包括 System.Web.SessionStateMod 或自定义会话状态模块。

求高手帮忙!!!

彼苍知的主页 彼苍知 | 初学一级 | 园豆:182
提问于:2015-02-07 02:43
< >
分享
所有回答(3)
0

这异常的提示信息里面的两点都有做吗?

随便默认建立的网站session都是启用的。

很有可能是opente.aspx的page指令里面强行指定enableSessionState =false

arg | 园豆:1047 (小虾三级) | 2015-02-07 12:39

opente.aspx的page指令里面没有指定enableSessionState =false,在webconfig中指定了enableSessionState=true;

支持(0) 反对(0) 彼苍知 | 园豆:182 (初学一级) | 2015-02-08 18:39
0

是不是你的浏览器没有开cookie?

刘宏玺 | 园豆:14004 (专家六级) | 2015-02-07 15:56

重新跳回到longin.aspx页面时可以取出session中的值得,cookie肯定开了,要不然没有sessionid,就不会取到session值了

支持(0) 反对(0) 彼苍知 | 园豆:182 (初学一级) | 2015-02-08 18:41
0

你加一个if(!iIsPostBack){}试试?

KMSFan | 园豆:108 (初学一级) | 2015-02-07 20:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册