Har*_*ris 5 vb.net membership asp.net provider profile
使用Asp.net会员和个人资料提供商:
我能够使用其Membership UserID而不是其用户名来检索用户配置文件吗?
我问的原因是因为如果我有UserID而不是Username,我将不得不编写以下两行代码
Dim MembershipUser As MembershipUser = Membership.GetUser("UserID")
Dim Profile As Profile = Profile.GetProfile(MembershipUser.UserName)
Run Code Online (Sandbox Code Playgroud)
代替:
Dim Profile As Profile = Profile.GetProfile("UserID")
这会影响性能吗?我的设计不好吗?我错过了什么吗?
请注意:我知道我可以使用以下代码检索当前登录的用户:HttpContext.Current.User.Identity.Name
Guid userId = Membership.GetUser().ProviderUserKey as Guid;
Run Code Online (Sandbox Code Playgroud)
会给你你想要的 UserId。为了在 ASP.NET 应用程序中简单起见,我通常会在用户登录时进入会话。
asp.net 成员资格表对每个应用程序都有唯一的用户名,并且由于可以在一个数据库中定义多个应用程序,因此也可以调用 Profile.GetProfile( string userName ) 从不同的应用程序返回配置文件。这就是为什么没有 GetProfile( userName ) 并且自己实现它是一个坏主意。
归档时间: |
|
查看次数: |
1782 次 |
最近记录: |