【问题标题】:Checking role exists for user before add在添加之前检查用户的角色是否存在
【发布时间】:2017-07-31 19:59:56
【问题描述】:

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

  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。当我为此用户添加角色时,我想在向该用户添加新角色之前检查该用户是否有角色

【问题讨论】:

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


    【解决方案1】:

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

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

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

    【讨论】:

    • 很高兴知道它对您有所帮助 :) 干杯
    • 我是在简单的控制器中编写这个查询,而不是用于那个的 web api 控制器,那么如何在这个控制器中使用 UserManger?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-27
    • 1970-01-01
    • 2010-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-16
    相关资源
    最近更新 更多