请问session 出现 "未将对象引用设置到对象的实例"的问题

windy_wzh 2006-12-13 03:46:59
我在构造函数中写:
if (System.Web.HttpContext.Current.Session["userName"]!= null)
{
Response.Write("登录成功");
}

运行时出现错误: 未将对象引用设置到对象的实例
请问应怎么改,谢谢!
...全文
225 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
liujia_0421 2006-12-13
  • 打赏
  • 举报
回复
可能我见得少,你这种方法还真不知道..

这样吧..
你断点调试一下,看执行到出现异常的地方时,Session["userName"]的值是什么,感觉有点奇怪,监视一下吧..
windy_wzh 2006-12-13
  • 打赏
  • 举报
回复
放在构造函数中,我是想其他后台页面可以直接继承这个页面来判断用户是否登录,如果没登录就转到登录页面。如果放在page_load能不能实现这个功能呢
ojekleen 2006-12-13
  • 打赏
  • 举报
回复
楼上正解!!
liujia_0421 2006-12-13
  • 打赏
  • 举报
回复
TO:运行到这一行就出错了,还是一样的错误,是不是在构造函数中不能这样用呢?

有点不解,为什么要放在构造函数中判断呢?

一般的做法都是放在page_load事件中来判断,如果说未登录,则直接跳转到login.aspx;
windy_wzh 2006-12-13
  • 打赏
  • 举报
回复
在页面上加入 System.Web.HttpContext.Current.Session["userName"] = "abc" 这一行后,运行到这一行就出错了,还是一样的错误,是不是在构造函数中不能这样用呢?
ojekleen 2006-12-13
  • 打赏
  • 举报
回复
估计没有Session 设定来源..你在页面给个值试试会不会报错
Session["userName"]="abc";
if (System.Web.HttpContext.Current.Session["userName"]!= null)
{
Response.Write("登录成功");
}
liujia_0421 2006-12-13
  • 打赏
  • 举报
回复
断点一下,看此时Session["userName"]是什么值..
windy_wzh 2006-12-13
  • 打赏
  • 举报
回复
qc1984326(潮儿) :你说的 没给session设定来源 是怎么回事,怎么设定?

我在login.aspx中设定了 Session["userName"]="..."
在pageBase的构造函数中判断是否有Session值,然后在其他页面继承pageBase,以此来判断用户是否登录,可在pageBase页面始终出现这个错误,不知是为什么?
qc1984326 2006-12-13
  • 打赏
  • 举报
回复
是不是没给session设定来源啊!!
windy_wzh 2006-12-13
  • 打赏
  • 举报
回复
就是在这一句出错的,出错信息:

未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:


行 14: //
行 15:
行 16: if (System.Web.HttpContext.Current.Session["userName"]!= null)
行 17: {
行 18: Response.Write("登录成功");


源文件: d:\web\wtest\pagebase.cs 行: 16

我是丁学 2006-12-13
  • 打赏
  • 举报
回复
不是这一句出的错吧?
liujia_0421 2006-12-13
  • 打赏
  • 举报
回复
确定是运行到这里时出的异常?

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧