ASP.NET菜鸟问题
我在做一个网站,登录后进入任意页面后,点击返回首页,此时我的登录状态会取消,如何返回首页后保留登录状态?我在“返回首页”按钮中只写了页面跳转的代码,请问还要加点什么?...
我在做一个网站,登录后进入任意页面后,点击返回首页,此时我的登录状态会取消,如何返回首页后保留登录状态?我在“返回首页”按钮中只写了页面跳转的代码,请问还要加点什么?
展开
5个回答
展开全部
一般三种方式保存登录用户及状态:
1.Application 全局变量,这个是服务器一启动该网站时生效的变量。所有的用户都能访问。
2.Session,这个是最普遍的做法,这个是用户变量,每个用户会话都有其单独的变量。
3.Cookie是保存在客户端的,也就是访问你网站的用户机器里。
在登录页面登录成功后,会把用户数据保存。比如Session["UserID"]="这是用户ID",然后转向首页,首页的加载函数里判断if(string.IsNullOrEmpte((string)Session["UserID"]))是否有值,有值的话代表已经成功登录了,就这样之后,即使你在任意其他页面再返回首页,也会执行加载函数里的判断。你其他任意页面是在登录成功后进入的,返回首页时Session["UserID"]肯定也还是有值的,所以就这样能保存登录状态了。
不知这样解说明白了吗?
1.Application 全局变量,这个是服务器一启动该网站时生效的变量。所有的用户都能访问。
2.Session,这个是最普遍的做法,这个是用户变量,每个用户会话都有其单独的变量。
3.Cookie是保存在客户端的,也就是访问你网站的用户机器里。
在登录页面登录成功后,会把用户数据保存。比如Session["UserID"]="这是用户ID",然后转向首页,首页的加载函数里判断if(string.IsNullOrEmpte((string)Session["UserID"]))是否有值,有值的话代表已经成功登录了,就这样之后,即使你在任意其他页面再返回首页,也会执行加载函数里的判断。你其他任意页面是在登录成功后进入的,返回首页时Session["UserID"]肯定也还是有值的,所以就这样能保存登录状态了。
不知这样解说明白了吗?
展开全部
if(HasLogin) //在登录页面验证成功后,添加Session吧,我是这么想的
{
Session["User"]="aaa";
.
.
.
}
如果只是保存个ID,name神马的简单会话数据,还是建议用Cookie,像楼下说的那样,需要什么其他数据再根据ID那些去获取,毕竟Session是会占服务器资源的,Cookie虽然不安全,但存些不那么重要且比较小的数据还是比较恰当的
{
Session["User"]="aaa";
.
.
.
}
如果只是保存个ID,name神马的简单会话数据,还是建议用Cookie,像楼下说的那样,需要什么其他数据再根据ID那些去获取,毕竟Session是会占服务器资源的,Cookie虽然不安全,但存些不那么重要且比较小的数据还是比较恰当的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
状态管理在ASP.NET中就是使用那几个内置对象来管理,比如用SESSION的话,你可以在登录的时候就在代码中写入用户信息,然后设置一个过期时间,如:session["username"]="张三"; 然后登录后无论你点击到哪个页面,哪个页面需要用到用户的信息直接取String userName = Session["username"];就可以了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
既然你又登录状态这个说法,那么你在登录页面中肯定要记录用户的登录状态。
一般有2中方式。一种是ting4c说的session方式,一种就是cookies方式。具体代码你百度一下一大堆的。但是要记住设置他们的过期时间。从性能上考虑session对服务器的负载会大一点。cookies是存储在客户端的。
一般有2中方式。一种是ting4c说的session方式,一种就是cookies方式。具体代码你百度一下一大堆的。但是要记住设置他们的过期时间。从性能上考虑session对服务器的负载会大一点。cookies是存储在客户端的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把USER放Session里啊,PAGE——Load的时候取一下就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询