Asp.net 是否可以使用其成员身份用户id检索用户配置文件?
使用Asp.net成员资格和配置文件提供程序: 我是否能够使用其成员身份用户ID而不是用户名检索用户配置文件 我问这个问题的原因是,如果我有UserID,而不是Username,那么我必须编写以下两行代码Asp.net 是否可以使用其成员身份用户id检索用户配置文件?,asp.net,vb.net,profile,membership,provider,Asp.net,Vb.net,Profile,Membership,Provider,使用Asp.net成员资格和配置文件提供程序: 我是否能够使用其成员身份用户ID而不是用户名检索用户配置文件 我问这个问题的原因是,如果我有UserID,而不是Username,那么我必须编写以下两行代码 Dim MembershipUser As MembershipUser = Membership.GetUser("UserID") Dim Profile As Profile = Profile.GetProfile(MembershipUser.UserName) 而
Dim MembershipUser As MembershipUser = Membership.GetUser("UserID")
Dim Profile As Profile = Profile.GetProfile(MembershipUser.UserName)
而不是:
Dim Profile As Profile=Profile.GetProfile(“UserID”)
这会影响性能吗?我的设计不好吗?我错过什么了吗
请注意:我知道我可以使用以下代码检索当前登录用户:HttpContext.current.user.Identity.Name
Guid userId = Membership.GetUser().ProviderUserKey as Guid;
将为您提供所需的用户标识。为了简化asp.net应用程序,我通常会在用户登录时加入会话
asp.net成员资格表对每个应用程序都有唯一的用户名,由于可以在一个数据库中定义多个应用程序,因此调用配置文件.GetProfile(字符串用户名)也可以从不同的应用程序返回配置文件。这就是为什么没有GetProfile(userName)并且自己实现它是个坏主意 我正在构建一个ASP.Net Web应用程序,而不是一个网站,因此我使用了WebProfileBuilder 1.3。(因为我真的看不到任何其他的方法来做这件事?)。。。我可以成功地使用:WebProfile.GetProfile(UserName),但没有传入ID的方法。我必须自定义它吗?如果您在visual studio中创建一个新网站,然后添加一些属性,例如。然后,您可以使用以下代码为任何用户检索post代码值:Profile.GetProfile(“用户名”).PostalCode。那么为什么你说“这就是为什么没有GetProfile(用户名),自己实现它是个坏主意”?你的问题并不清楚你到底想要什么。。。简单地看一看我的asp.net应用程序和香草asp.net成员资格,我问了一系列问题:“这会影响性能吗?我的设计是否糟糕?我是否遗漏了什么?”我想做的是使用MembershipUserID而不是用户名检索用户(而不是登录用户)的配置文件。