2012-03-28 6 views
2

Мне нужно, чтобы получить идентификатор пользователя, вошедшего в систему пользователя в ASP.net, я могу использоватьПолучить идентификатор пользователя в asp.net

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

, чтобы получить имя, но как я могу получить идентификатор пользователя?

Я пробовал (GUID) и Membership.GetUser, как я и нашел, но никто не работает.

+0

Не могли бы вы немного объяснить, что именно вы пытаетесь получить на примере? – PraveenVenu

+0

Я пытаюсь получить userId зарегистрированного пользователя, поэтому я могу получить записи для этого пользователя из базы данных. – user1162628

+0

Можете ли вы опубликовать часть своего кода? –

ответ

2

Проверьте недвижимость ProviderUserKey.

+0

Я не уверен, что я использовал это неправильно, но я пробовал это, как я видел после поиска в Интернете, и это не сработало. – user1162628

+0

Какая ошибка или ответ вы получаете. Это может быть глупый вопрос, но у вас даже есть членство, настроенное для вашего приложения? – Tuan

1

Это должно работать для вас

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

Edit:

Вы должны убедиться, что вы импортировать класс System.Web.Security использовать класс MembershipUser. В VB.Net вы можете сделать это так:

HTML

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

Код За

using System.Web.Security; 
+0

Это не работает, похоже, работает с C, но не с VB? – user1162628

+0

Каков результат, когда вы пытаетесь это сделать? Это ошибка? Является ли результат не фактическим ориентиром для пользователя? –

+0

Ошибки для MembershipUser, отсутствующие в сборке, Membership.GetUser, ссылка, необходимая для сборки, и user.ProviderUserKey, а не член 'System.Security.Principle.IPrinciple – user1162628

0

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

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

Надеюсь, это поможет.

Смежные вопросы