ASP.NET (C#)如何在其他的页面得到登录页面的用户名

这个是我的login.aspx登录页面,现在要求点击登录后实现在default.aspx页面的label标签显示该用户名,求教大神,如何实现??求分别在login页面和d... 这个是我的login.aspx登录页面,现在要求点击登录后实现在default.aspx页面的label标签显示该用户名,求教大神,如何实现??求分别在login页面和default页面详细的脚本。也可加我qq1536570204 展开
 我来答
百度网友7695b6b
推荐于2017-09-29 · TA获得超过165个赞
知道小有建树答主
回答量:126
采纳率:0%
帮助的人:118万
展开全部

用cookies 来实现吧 

HttpCookie logincookie = new HttpCookie("username");//设置cookies名称
logincookie.Value="登录用户名";//cookies值
logincookie .Expires=DateTime.MaxValue; //这个是设置cookies有效时间,你可以随意设置
Response.Cookies.Add(logincookie );//保存
//读取
if (Request.Cookies["username"]!=null)
{  
  label.Text = Request.Cookies("userName").Value; //读取cookies往你label上赋值
}
追问
但是你这个全是写在一个页面的啊,那我怎么在页面2调用,还有,你这个第二行的脚本就相当于你给cookie赋值,而不是cookie自动等于我登录的账号名称,账号有很多,登录时随机的,能详解不
追答
额  你可能没理解到cookies的用途  他是浏览器帮你保存数据的  也就是说相当于一个本地化的临时存储器,并不是存在服务端的

前半段设置是你在登录页面获取到值的时候做保存 相当于存在了浏览器里

后半段读取 你可以在其它任何界面都可以

多账号的话你就限制cookies保存时间啊 比如30分钟自动清除 或者用户主动注销登录时清除掉 都可以通过控制时间来完成
比如cookie.Expires = System.DateTime.Now;相当于cookies有效期结束
另外 设置cookies前可以检测一下 如果有值就可以先清除或者直接用
这样是不是可以理解为什么别人的网站可以保存登录信息N久了
还可以设置多值cookies 用法一样 你可以自己差一下 很简单的

忘了你的 还有。。。第二行那个 赋值就是让你等用户点击登录的时候 获取到他的用户名 然后再给他赋值啊。。那个“登录用户名” 就是你要传送的值。。。。
hey112233
2014-05-24 · 超过57用户采纳过TA的回答
知道小有建树答主
回答量:129
采纳率:100%
帮助的人:99.3万
展开全部
登陆成功之后写cookie里面或session里面,下个页面取出即可。
更多追问追答
追问
Session["username"] = TextBox1.Text.ToString().Trim();这个是我登录页面的,label1.Text = Session["uname"].ToString();这个是我主页面的,但是结果不能达到要求。你能有详细的脚本么
追答
登陆页面Session["username"] = TextBox1.Text.ToString().Trim();

主页面label1.Text = Session["username"].ToString();

按上面弄的话是没有问题。
注意的一点是session保持时间,页面不动的话一般是20分钟,否则就被服务器清除了。还有如果你的IIS对应用程序池做了回收了,也会清除session。
所以我建议,应用系统用session存储,购物商城等网站用cookie更好一些。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Meen_W
2014-05-24 · 超过32用户采纳过TA的回答
知道答主
回答量:77
采纳率:0%
帮助的人:66.7万
展开全部
可以把用户名存在session里面
追问
能不能你自己弄个脚本给我,谢谢了,自学的这个东西很多不懂
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式