【问题标题】:System.Web.Security.Roles.GetRolesForUser(currentUser.Identity.Name) just one time works trueSystem.Web.Security.Roles.GetRolesForUser(currentUser.Identity.Name) 仅一次有效
【发布时间】:2013-04-20 08:07:57
【问题描述】:

在 Internet mvc 4 项目中,当以调试模式运行项目并登录到应用程序时,将识别之前分配的用户角色。我用于获取用户角色的功能是:

System.Web.Security.Roles.GetRolesForUser(currentUser.Identity.Name)

但是当我停止调试并再次在调试模式下运行应用程序时,用户已通过身份验证,但 GetRolesForUser 返回字符串 [0]。为什么会发生并且不返回角色?

【问题讨论】:

    标签: asp.net-mvc-4 roles roleprovider


    【解决方案1】:

    我遇到了同样的问题,我修复了它,改变了寻找角色的方式:

    var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new PlutusDbContext()));
    
    var user = manager.FindByName(currentUser.Identity.Name);
    var userRoles = manager.GetRoles(user.Id);
    

    PS:我使用的是 Microsoft.AspNet.Identity 2.0.1

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多