Session用法~急

来源:百度知道 编辑:UC知道 时间:2024/06/18 09:49:58
先说明我的意思:网站一般都要先登录才允许我们浏览里面的内容,当没有登录时,我们点击了网站内的链接则会自动转至登录界面,这好像是通过Session的值来判断的吧,可怎么判断呢?我在 string uname;//存储利用Cookies获取的用户名

string uname = Session["username"].ToString();
if (uname== null)
{
Response.Redirect("userLogin.aspx");
// Response.Write("请登录!");
}
else
{
代码……
}
我这样运行会出错,提示 这句string uname = Session["username"].ToString();“未将对象引用设置到对象的实例。”请问如何实例化呀!还有有更好的办法!急

首先楼主的数据类型知识没有弄懂,楼上貌似有些兄弟也没弄懂
null类型是Object基类
Session["username"]也是Object类型的 也就是说
if(Session["username"]==null)可以这样比较
若Session["username"].ToString() 转换成了字符串类型 那么要比较它是否为空 则if(Session["username"].ToString()=="")
一般可以这样写 if(Session["username"]==null)//首先判断session这个对象是否实例化
{
if(Session["username"].ToString()=="")//再判断这个对象的值是否为空
{

}
}

在登陆成功后赋予一个Session值,就判断这个Session是不是为空就好.

if (Session["username"]== null && Session["username"].ToString()=="")
{
Response.Redirect("userLogin.aspx");
// Response.Write("请登录!");
}
else
{
代码……
}

修改成这样就行了:

string uname = Session["username"];
if (uname==null)
{
Response.Redirect("userLogin.aspx");
// Response.Write("请登录!");
}
el