Identity Framework Получить пользователя приложения после входа в систему - PullRequest
0 голосов
/ 18 мая 2018

Я использую пользовательский класс для автоматического входа в систему пользователя с удостоверением Framework, затем я использую ApplicationUser для получения нескольких сведений, но теперь ApplicationUser равен нулю, когда вход в систему выполнен успешно, вот мой код:

_signInManager.PasswordSignInAsync(username, pwd, RememberMe, lockoutOnFailure: false);
ApplicationUser = _userManager.GetUserAsync(_signInManager.Context.User).Result;

Код находится не в контроллере, а в собственном классе для входа в систему и управления пользователями, вчера он работал хорошо, но я не могу понять, почему он не работает сейчас.

'_ signInManager' и '_userManager' созданывнедрение зависимостей в конструктор.

EDIT
Я переместил код в контроллер, где я могу получить доступ к «User», вход выполнен успешно, но User.Identity.isAuthenticatedЛожные

1 Ответ

0 голосов
/ 18 мая 2018

После того, как вы выполните _signInManager.PasswordSignInAsync, вам нужно установить cookie по вашему запросу.Это означает, что вам нужно разрешить перенаправление на другую страницу, прежде чем вы сможете использовать Context.User.

Если вам нужно ApplicationUser сразу после входа, просто используйте _userManager.FindByNameAsync(username).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...