求在.cs中的Session问题解决

love_AC 2006-04-13 03:27:10
在Asp.net中,我用PageBase页面来继承Page, 把很多公用方法都写在PageBase中,其他每个页面都继承PageBase. 在登陆时我设Session["UserName"]="a"; 那么当我在其他页面执行添加删除等操作时,首先判断Session是否存在,不存在就跳到登陆页面。 可当Session不存在时就出现问题,弹出错误信息,而不跳到登陆页面,下面是在PageBase中的一段代码
if(System.Web.HttpContext.Current.Session["UserName"]!=null && System.Web.HttpContext.Current.Session["UserName"].ToString() =="")
{
//操作
}
else
{
//跳转到登陆页面
}
错误信息是:
未将对象引用设置到对象的实例
System.Web.HttpContext.Current.Session["UserName"]为红色显示
...全文
236 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
winsor_w 2006-04-13
  • 打赏
  • 举报
回复
又学到新东西了
lizheng__114 2006-04-13
  • 打赏
  • 举报
回复
在没判断有没有Session["UserName"]之前是不能用.ToString()的,否则就会报你上面说的错
就用if (Session["UserName"]!= null)判断就可以、了
love_AC 2006-04-13
  • 打赏
  • 举报
回复
继续阿
love_AC 2006-04-13
  • 打赏
  • 举报
回复
有没有更好的方法呢
webwait 2006-04-13
  • 打赏
  • 举报
回复
晕,打字的时间就从1楼掉5楼了,呵呵
webwait 2006-04-13
  • 打赏
  • 举报
回复
如果为null,System.Web.HttpContext.Current.Session["UserName"]就不存在,当然也没办法判断他是不是为空
if(System.Web.HttpContext.Current.Session["UserName"]!=null)
{
if (System.Web.HttpContext.Current.Session["UserName"].ToString() =="")
{
//操作
}
else
{
//跳转到登陆页面
}
}
else
{
//跳转到登陆页面
}
Small__Wolf 2006-04-13
  • 打赏
  • 举报
回复
可能根本就没有这个Session
try
{
if(System.Web.HttpContext.Current.Session["UserName"]!=null && System.Web.HttpContext.Current.Session["UserName"].ToString() =="")
{
//操作
}
else
{
//跳转到登陆页面
}

}
catch
{
//跳转到登陆页面
}
nimeide1234567890 2006-04-13
  • 打赏
  • 举报
回复
try
{
if(Session["UPower"].ToString ()!="5) {
throw new ArgumentNullException() ;
}
else
{

}
}
catch
{
Response.Redirect (login.aspx);
Response.End ();
}
nimeide1234567890 2006-04-13
  • 打赏
  • 举报
回复
try
{
if(Session["UPower"].ToString ()!="5) {
throw new ArgumentNullException() ;
}
else
{

}
}
catch
{
Response.Redirect (login.aspx);
Response.End ();
}
songxiaozhao 2006-04-13
  • 打赏
  • 举报
回复
呵呵,你试试写成
System.Web.HttpContext.Current.Session["UserName"]==null
有些时候你判断不等于空的时候会认为有值,所以会出现 错误:
未将对象引用设置到对象的实例
Tom_Real 2006-04-13
  • 打赏
  • 举报
回复
用System.Web.HttpContext.Current.Session["UserName"]+"" ==""判断比较保险

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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