2023-02-16 274
如何在ASP.NET成员身份中访问UserId而不使用Membership.GetUser(username)在ASP.NET Web应用程序项目中?
can UserId包含在UserName(System.Web.Profile.ProfileBase)旁边的Profile命名空间中?
我决定使用自己的用户用户进行身份验证(非常简单但它有效),我应该很久以前完成.
我的原始问题是关于userid,它不可用:
System.Web.HttpContext.Current.User.Identity.Name
试用:
MembershipUser CurrentUser = Membership.GetUser(User.Identity.Name);
Response.Write("CurrentUser ID :: " + CurrentUser.ProviderUserKey);
是您在每次需要userid时保存数据库调用的原因?如果是这样,当我使用ASP.NET MembershipProvider时,我通常会做一个自定义提供程序,允许我缓存该调用,或者我可以缓存的实用程序方法.
如果您正在考虑将其放入配置文件中,我没有看到很多原因,特别是它还仍然需要一个数据库调用,除非您在那里使用自定义个人资料提供程序,否则它有添加了解析UserID的处理.
如果您想知道为什么他们没有实现getUserID方法,那么它只是因为您并不总是保证用户ID将成为包含在附带提供者中的GUID.
编辑:
请参阅 scottgu的提供商文章,它提供了一个下载实际源代码的链接对于IE SQLMEMBERSHIPPROVIDER .
但最简单的事情实际上是您的用户对象中的getUserID()方法,或者实用程序类,如果在那里,您将从缓存/会话中获取UserID,否则以违反数据库,通过用户名(或存储)缓存它会话),并返回它.
更多要考虑的东西(但由于cookie大小限制而非常小心): forms auth:没有提供者的成员资格,角色和配置文件,没有会话
以上所述是小编给大家介绍的如何在ASP.NET会员中访问UserId而不使用Membership.GetUser()?,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!
原文链接:https://77isp.com/post/33829.html
=========================================
https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。
数据库技术 2022-03-28
网站技术 2022-11-26
网站技术 2023-01-07
网站技术 2022-11-17
Windows相关 2022-02-23
网站技术 2023-01-14
Windows相关 2022-02-16
Windows相关 2022-02-16
Linux相关 2022-02-27
数据库技术 2022-02-20
抠敌 2023年10月23日
嚼餐 2023年10月23日
男忌 2023年10月22日
瓮仆 2023年10月22日
簿偌 2023年10月22日
扫码二维码
获取最新动态