ASP.NET 2.2用户角色的问题

问题描述 投票:1回答:1

我对用户角色有疑问。

在我的应用程序中,当用户注册时,将发送一封确认电子邮件,该电子邮件随后指向应用程序的内部页面,该页面允许完成注册过程。

被调用的控制器的方法通过这些功能识别主叫用户:

ApplicationUser CurrentUser = await GetCurrentUserAsync();

public Task<ApplicationUser> GetCurrentUserAsync() => _userManager.GetUserAsync(_httpContextAccessor.HttpContext.User);

用户具有“ Utente”角色,但未被系统识别。为了使其被识别,我必须再次登录。

[我的问题是用户注册表单将其插入“用户”组,并将确认电子邮件发送给用户。用户单击此电子邮件上的链接即可结束注册,然后应该能够使用该应用程序而不必再次登录。

我认为我可以使用类似于以下的解决方案来解决问题:

添加SignInManager.SignIn(user,false,false); (如果没有用户,请在RedirectToAction(“ Index”,“ Members”)之前添加var user = UserManager.FindById(User.Identity.GetUserId()));

有人可以告诉我如何在ASP.NET CORE 2.2中进行操作吗?

谢谢。

c# asp.net-core asp.net-identity
1个回答
0
投票

我为用户分配了如下角色后解决了刷新登录名的问题:

await _userManager.AddToRoleAsync(user, "Utente");

await _signInManager.SignInAsync(user, isPersistent: false);
© www.soinside.com 2019 - 2024. All rights reserved.