日期:2014-05-19  浏览次数:20421 次

我这样用Session来验证身份为何总是报错?
我自已手工清空Session后,然后直接访问我这个页面,报下面的错,为何进行报错而不是执行网页跳转?请大家帮看看哪里出问题了?谢谢

异常详细信息:   System.NullReferenceException:   未将对象引用设置到对象的实例。(因为给我手工清空Session)我要它执行网页跳转,而不是报错,请问我该如果写?

我的页面代码:如果姓名或密码为空\过期就强制回到首页
if(Session[ "user_name "]==null   ||   Session[ "user_password "]==null)
{
string   ToUrl= "index.aspx ";
Server.Transfer(ToUrl);
}
else
{
Label1.Text== "目前Session没有清空 ";
}



------解决方案--------------------
if(Session[ "user_name "]==null || Session[ "user_password "]==null)
{
string ToUrl= "index.aspx ";
Server.Transfer(ToUrl);
}
else
{
Label1.Text== "目前Session没有清空 ";
}
程序没有错误!我运行了可以跳转。
System.NullReferenceException: 未将对象引用设置到对象的实例,顾名思义,空引用啦.就是要没创建实例,或实例化. 设置断点调试一下!
------解决方案--------------------
lz肯定是在Label1未生成的时候用了Label1对象,建议你把
Label1.Text== "目前Session没有清空 ";
改成Response.Write( " <script language=javascript> alert(目前Session没有清空) </script> ")
看还报错不

------解决方案--------------------
if(Session[ "user "] == null || Session[ "user "].ToString() == " ")
------解决方案--------------------
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例

提示的是哪个控件?
------解决方案--------------------
问题没出在你给出的代码中。
------解决方案--------------------
问题和你给出的代码没有关系啊,这段代码是没有问题的!
------解决方案--------------------
用脚本时行信息的显示吧。这样不容易出错。。建议还是用shaohaiou()的方法。
------解决方案--------------------
Server.Transfer(ToUrl); 可能是ToUrl页面里又用到SESSION了
改成Redirect看看错误会报哪一行
------解决方案--------------------

string ToUrl= "index.aspx ";
Server.Transfer(ToUrl);
改成
Response.Redirect( "index.aspx ");
然后把错误信息在给出来,应该比你现在给的详细很多

------解决方案--------------------
试string.isnullorempty(Session[ "user_name "])