繁体   English   中英

如何获取当前登录用户的ID?

[英]How do I get the ID of the current logged in user?

我正在开发一个从ASP.NET Web应用程序模板构建的示例项目(Web表单,而不是MVC)。 用户登录后,我想获取用户的ID并将其存储在会话变量中,以便我可以在页面之间传递它。 如何从ASP.NET成员资格提供程序获取用户的ID? 根据用户的ID,我指的是成员资格数据库中的GUID。 有没有方法来获取用户的ID?

我正在使用默认数据库架构并将其部署到我的服务器。

谢谢!

尝试这个:

MembershipUser membershipUser = Membership.GetUser();
string UserID = membershipUser.ProviderUserKey.ToString();

您不需要传递用户ID。 当前经过身份验证的用户存储在HttpContext.Current.User中

您可以在类中定义静态方法并使用它:

public static Guid getCurrentUserGUID(){
    if (HttpContext.Current.User.Identity.IsAuthenticated)
    {
        MembershipUser myObject;
        myObject = Membership.GetUser(HttpContext.Current.User.Identity.Name);
        return (Guid)myObject.ProviderUserKey;
    }
    return Guid.Empty;       
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM