mvc 5检查用户角色

如何在mvc 5中找到登录用户的角色?

我通过此代码创建了用户

private bool AddUserAndRole() { IdentityResult ir; var rm = new RoleManager (new RoleStore(new ApplicationDbContext())); ir = rm.Create(new IdentityRole("admin")); var user = new ApplicationUser() { UserName = "Admin" }; var result = UserManager.Create(user, "somepassword"); UserManager.AddToRole(user.Id, "admin"); return true; } 

我在该网站上登录之后。 如何在控制器中我可以检查该用户是否有角色==“admin”? 我发现只有一种看起来不那么快的方法。

  var rm = new RoleManager(new RoleStore(new ApplicationDbContext())); var role = rm.FindByName("admin"); bool result = User.IsInRole(role.Name); //true 

我们有其他方法吗?

 bool result = User.IsInRole("admin") 

更容易。 🙂