2011-04-18 121 views
4

我正在從ASP.NET Web應用程序模板(Web表單,而不是MVC)構建的示例項目。用戶登錄後,我想獲取用戶的ID並將其存儲在會話變量中,以便可以在頁面之間傳遞它。如何從ASP.NET成員資格提供程序獲取用戶標識?按照用戶的ID,我指的是會員數據庫中的GUID。有沒有一種方法來獲取用戶的ID?如何獲取當前登錄用戶的ID?

我正在使用默認的數據庫模式,並將其部署到我的服務器。

謝謝!

回答

8

試試這個:

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

你可以在一個類中定義一個靜態方法,並使用它:

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;  
}