在asp.net中获取用户ID

Posted

技术标签:

【中文标题】在asp.net中获取用户ID【英文标题】:Get userID in asp.net 【发布时间】:2012-03-28 16:16:15 【问题描述】:

我需要在ASP.net中获取登录用户的userId,我可以使用

System.Web.HttpContext.Current.User.Identity.Name

获取名称,但如何获取用户 ID?

我尝试了 (GUID) 和 Membership.GetUser,但似乎都没有。

【问题讨论】:

你能解释一下你想通过一个例子得到什么吗? 我正在尝试获取已登录用户的 userId,以便从数据库中获取该用户的记录。 你能发布一些你的代码吗? 【参考方案1】:

检查ProviderUserKey 属性。

【讨论】:

我不确定我是不是用错了,但我试过这个,就像我在谷歌搜索后看到的那样,它没有用。 您得到什么错误或响应。这可能是一个愚蠢的问题,但您是否为您的应用程序配置了成员资格?【参考方案2】:

这应该适合你

MembershipUser user = Membership.GetUser(HttpContext.Current.User.Identity.Name);
string userID = user.ProviderUserKey.ToString();

编辑:

您需要确保导入 System.Web.Security 类以使用 MembershipUser 类。在 VB.Net 中,您可以这样做:

HTML

<%@ Import Namespace="System.Web.Security" %>

代码背后

using System.Web.Security;

【讨论】:

你试试这个结果是什么?它会出错吗?结果不是用户的实际指导吗? MembershipUser 错误,缺少程序集、Membership.GetUser、程序集所需的引用和 user.ProviderUserKey,不是 'System.Security.Principle.IPrinciple 的成员 您要导入 System.Web.Security 吗? 对不起,我是 VB 新手,如何导入? 仍然无法使用 MembershipUser【参考方案3】:

Dim mu As System.Web.Security.MembershipUser = System.Web.Security.Membership.GetUser()

Dim strUsrId As String = mu.ProviderUserKey.ToString()

希望这会有所帮助。

【讨论】:

以上是关于在asp.net中获取用户ID的主要内容,如果未能解决你的问题,请参考以下文章

如何在asp.net core中获取当前用户

在视图中获取 ASP.NET 标识当前用户

如何在 ASP.NET MVC 中获取当前用户

如何在 asp.net 控制器中获取用户身份?

如何通过 Youtube API 在 asp.net 中获取用户视频列表

如何在 Active Directory 中获取用户的组? (c#, asp.net)