2015-08-22 3 views
0

У меня есть время, пытаясь выяснить простейшую задачу. Я успешно добавил свое дополнительное поле в файл данных AspNetUsers, используя миграцию, а новое поле - BRANCHID. Все отлично работает, но как мне отобразить значение поля для зарегистрированного пользователя на простой метке? Я использую vb с webforms.ASP.NET User.Identity Get Migrated Field

В C# можно использовать следующее:

var userStore = new UserStore<ApplicationUser>(new ApplicationDbContext()); 

var manager = new UserManager<ApplicationUser>(userStore);   

var currentUser = manager.FindById(User.Identity.GetUserId()); 

GLOBAL.selectedBRANCHID = currentUser.BRANCHID; 

Кто-нибудь знает, как я могу сделать подобную задачу в VB ??

Заранее благодарен,

Ник.

ответ

0

Веб-сайт Visual Basic Windows Forms по умолчанию имеет ApplicationUserManager, который вы можете использовать так, как вам хотелось бы. Код в Visual Basic должен быть следующим, если он используется на одном из стандартных сайтов.

Dim manager = Context.GetOwinContext().GetUserManager(Of ApplicationUserManager)() 
Dim currentUser = manager.FindByIdAsync(User.Identity.GetUserId()) 
GLOBAL.selectedBRANCHID = currentUser.BRANCHID 

Хотя вы могли бы использовать что-то вроде этого, если необходимо использовать ApplicationDbContext непосредственно:

Dim manager = New ApplicationUserManager(New UserStore(Of ApplicationUser)(context.[Get](Of ApplicationDbContext)())) 

Это был найден просматривал код по умолчанию за файлы по умолчанию, в Visual Basic шаблоне для веб-форм в Визуальная Studio 2013.

+0

Cheers Troy, я попробовал ваше решение, но теперь получаю ошибку. BRANCHID не является членом 'task (Of ApplicationUser)' ?? Я не могу, чтобы жизнь меня показала. Вот мой applicationuser код: –

+0

Public Class ApplicationUser Inherits IdentityUser Public BranchID Property() As String Получить Вернуться m_BranchID End Get Set (значение As String) m_Branch = значение End Set End Property Private m_BranchID As String –

+0

Public Function GenerateUserIdentity (manager As ApplicationUserManager) As ClaimsIdentity 'Обратите внимание, что тип аутентификации должен соответствовать таковому, определенному в CookieAuthenticationOptions.AuthenticationType Dim userIdentity = manager.CreateIdentity (Me, DefaultAuthenticationTyp es.ApplicationCookie) 'Добавить пользовательские претензии здесь Возврат userIdentity Конечная функция –

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