C# 在添加前检查用户的角色是否存在

C# 在添加前检查用户的角色是否存在,c#,asp.net-mvc,asp.net-identity,roles,C#,Asp.net Mvc,Asp.net Identity,Roles,我正在尝试为用户添加角色,但在此之前我想检查它是否存在。我该怎么做? 这是我的密码 public void AddRoleForUser(ApplicationUser obj, IdentityRole role) { _userManager = new ApplicationUserManager(new UserStore<ApplicationUser>(_context)); var currentUser = _userMa

我正在尝试为用户添加角色,但在此之前我想检查它是否存在。我该怎么做? 这是我的密码

  public void AddRoleForUser(ApplicationUser obj, IdentityRole role)
    {
        _userManager = new ApplicationUserManager(new UserStore<ApplicationUser>(_context));

        var currentUser = _userManager.FindById(obj.Id);
        // before this i have to check 
        var roleresult = _userManager.AddToRole(currentUser.Id, role.Name);
    }
public void addrolefourser(ApplicationUser obj,IdentityRole角色)
{
_userManager=newapplicationUserManager(newuserstore(_context));
var currentUser=_userManager.FindById(obj.Id);
//在这之前我必须检查一下
var roleresult=\u userManager.AddToRole(currentUser.Id,role.Name);
}

例如,我有一个用户,其id=1。当我为该用户添加角色时,我想在向该用户添加新角色之前检查是否存在该用户的角色

您只需检查
user.IsInRole(“YourRoleName”)

如果要通过用户Id检查,请使用下面的代码

if (!userManager.IsInRole(user.Id, "Admin"))
{
    userManager.AddToRole(user.Id, "Admin");
}

我很高兴知道这对你有帮助:)谢谢,我是用简单的控制器写这个查询的,不是一个web api控制器,那么如何在这个控制器中使用UserManger呢?