c# - 添加前检查用户角色是否存在

标签 c# asp.net-mvc asp.net-identity roles

我正在尝试为用户添加角色,但在此之前我想检查它是否存在。我怎样才能做到这一点? 这是我的代码

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

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

最佳答案

你只需要检查 User.IsInRole("YourRoleName");

如果您想通过 User Id 进行检查,请使用以下代码。

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

关于c# - 添加前检查用户角色是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42718978/

相关文章:

javascript - C# mvc - Controller 返回部分 View 或 json 数据

jquery - 未捕获的类型错误 : undefined is not a function jquery. unobtrusive-ajax.js

asp.net-identity - 在哪里可以找到来自 Blazor Web Assembly 应用程序的源 "Authorizing..."消息?

c# - WCF 服务可以使用它自己的服务吗?

c# - 显式转换运算符失败,出现 "assembly is not referenced"错误

c# - FillRectangle 未使用提供的 SolidBrush 的精确颜色进行填充

c# - 如何使用 razor 引擎使用图像 src 进行电子邮件模板化

c# - 无法作为 href 访问条件 Razor 变量

c# - ASP.NET Identity - 多提供商自定义实现

.net - 基于权限的授权.net 身份