User.Identity.Name获取用户名出错

sweetwxh 2009-02-18 12:09:09
ASP.NET 2.0,使用Membership。
目前遇到个这样的问题。
同一台主机同时登陆两个不同的账户(假设用户名a和用户名b)。登陆之后,在一个页面内执行了如下SQL语句:
select * from [table] where username='"+User.Identity.Name+"'
目的是选择出对应用户名的数据。
但是经过如下操作后,选择出来的数据出现错误。
我先在a中执行该语句,可以正确得到a对应的数据,然后在b(注意a和b在同一主机同时登陆)中执行该语句,得到的数据却是a的。这个应该是在使用User.Identity.Name获取的用户名出错导致的。
我想问问有没有遇到过这种问题的朋友,解决办法是什么?
还有,User.Identity.Name获取到的用户名是从哪里得到的?Cookie?
谢谢!
...全文
148 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jin225 2009-02-18
  • 打赏
  • 举报
回复
对是从cookie 得到的 ! 他只能得到最后登陆的用户名 不可以同时在一个机子上登陆二个的

换下就session验证就行了
泡面之夏 2009-02-18
  • 打赏
  • 举报
回复
个人觉得另写个Session保存用户名!
sweetwxh 2009-02-18
  • 打赏
  • 举报
回复
谢谢jin225的回答,在Membership当中默认采用的就是用Cookie来保存信息(我没有进行过什么设置),是否有方法可以改变客户端信息的保存方式?或者还是需要则登陆的时候,自己来写个Session保存用户名?

62,046

社区成员

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

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

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

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