ASP.NET C#中怎么让 httpcontext.current.user.identity.name 获取为自定义的值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET C#中怎么让 httpcontext.current.user.identity.name 获取为自定义的值相关的知识,希望对你有一定的参考价值。
也可以这么描述。用户登录了网站,然后我们写代码的时候,在网页的其他页面 使用 httpcontext.current.user.identity.name 的时候是用户的名字。求大神解决!
登录成功后,在任何页面的 httpcontext.current.user.identity.name 都是该用户的名字。求代码。求解释。
我目前可以替换掉单个页面的 httpcontext.current.user 对象 但不能替换整个用户登录页面。
我想问的是怎么在整个用户访问期间,httpcontext.current.user 对象 都是我自定义的对象。
鉴于你已经可以替换单页面的HttpContext.Current.User对象。
那么下面你需要做的事
添加一个Global.asax
//注册获取用户信息的事件,并且在其中写上你修改单个页面的代码protected void Application_AuthenticateRequest(object sender, EventArgs e)
//你修改单个页面的代码,写在这里。这样整个管道中的HttpContext.Current.User都将改变。
我并没有说过是对象啊。我说的因为我们公司的就实现了这个,所以我才问,我有源代码,但是太多没找到是哪里做了这个操作
追答我想问的是怎么在整个用户访问期间,httpcontext.current.user 对象 都是我自定义的对象
咯 这是你的原话 你就是想要整个用户对象 但是这个不可以的
这个是可以的,因为 我已经实现了,是在微软的.NET DEVELOP 官方网站上看见的资料。我已经做出来了 你不用怀疑。
参考技术B 你要获取,你就必须先存进去, 什么时候存进去? 当时是在登陆 验证成功后, 把用户信息存进去。怎么放进去 得看你代码了追问请问怎么放进去啊,我要用户登录后的每个访问页面的 httpcontext.current.user.identity.name 值都是这个用户。
追答得看你代码
参考技术C HttpContext.Current.User是IPrincipal接口类型,如果想实现你说的这种,需要自己实现这个IPrincipal就可以的。
以上是关于ASP.NET C#中怎么让 httpcontext.current.user.identity.name 获取为自定义的值的主要内容,如果未能解决你的问题,请参考以下文章
C# ASP.NET怎么手动给GridView赋值,不从数据库中读取?