繁体   English   中英

ASP.NET MVC手动添加角色

[英]ASP.NET MVC Add Roles manually

我真的是ASP.NET MVC编程的新手,并且当前正在为Web应用程序项目使用默认模板,该模板包含用于注册用户,用户管理等方法(包括db方法。 但是,是否可以在默认数据库中手动添加roles ,如下所示:

手动添加角色

并使其正常工作,而不是使用视图来创建roles

要向用户添加角色,您首先需要在AspNetRoles表中添加一个新角色(您已经做过)
然后,您需要将相应的用户ID和角色ID插入AspNetUserRoles表中

身份3(ASP.NET Core)

创建:

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();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM