У меня проблема с ролью пользователя.
В моем приложении, когда пользователь регистрируется, отправляется электронное письмо с подтверждением, которое затем ссылается на внутреннюю страницу приложения, которая позволяет процессу регистрациибыть завершено.
Метод вызываемого контроллера распознает через эти функции вызывающего пользователя:
ApplicationUser CurrentUser = await GetCurrentUserAsync();
public Task<ApplicationUser> GetCurrentUserAsync() => _userManager.GetUserAsync(_httpContextAccessor.HttpContext.User);
Пользователь имеет роль «Utente», но не распознается системой. Чтобы он был распознан, мне нужно снова войти в систему.
Моя проблема в том, что форма регистрации пользователя вставляет ее в группу «Пользователи» и отправляет подтверждение по электронной почте пользователю. Пользователь нажимает на ссылку на этом электронном письме, завершает регистрацию и затем должен иметь возможность использовать приложение без необходимости повторного входа в систему.
Я думаю, что могу решить проблему с помощью решения, подобного следующему:
добавить SignInManager.SignIn (пользователь, ложь, ложь);(если у вас нет пользователя, var user = UserManager.FindById (User.Identity.GetUserId ())) перед RedirectToAction ("Index", "Members");
Может кто-нибудь сказать, каксделать это в ASP.NET CORE 2.2?
Спасибо.