我是ASP.NET
MVC
编程的新手,我目前正在使用Web应用程序项目的默认模板,其中包含注册用户,用户管理等方法,包括{{1也是。但是,我是否可以在默认数据库中手动添加db
,如下所示:
让它工作而不是使用视图来创建roles
?
答案 0 :(得分:1)
要向用户添加角色,首先需要在AspNetRoles
表格中添加新角色(您已经这样做了)
然后,您需要将相应用户的ID和角色ID插入AspNetUserRoles
表
答案 1 :(得分:0)
身份3(ASP.NET核心)
创建:
var role = await _roleManager.FindByNameAsync("Admin");
if (role == null)
{
role = new IdentityRole("Admin");
await _roleManager.CreateAsync(role);
}
顺便说一下:最好把你的角色放到一个常数类中。
检索用户角色: 我使用了以下扩展方法。
public static string GetUserRole(this ClaimsPrincipal principal)
{
if (principal == null)
{
throw new ArgumentNullException(nameof(principal));
}
return principal.Claims.SingleOrDefault(c => c.Type == "role")?.Value;
}
控制器:
var role = User.GetUserRole();