MVC 5检查用户角色 [英] mvc 5 check user role

查看:209
本文介绍了MVC 5检查用户角色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在MVC 5,我可以发现登录的用户的角色?

我这个code取得了用户

 私人布尔AddUserAndRole()
    {
        IdentityResult IR;
        变种RM =新RoleManager< IdentityRole>
            (新Rolestore的&所述; IdentityRole>(新ApplicationDbContext()));
        IR = rm.Create(新IdentityRole(管理员));        VAR用户=新ApplicationUser(){用户名=管理};
        变种结果= UserManager.Create(用户somepassword);
        UserManager.AddToRole(user.Id,管理员);        返回true;
     }

在我洛在现场由该用户。如何在控制,我可以检查该用户是否有作用==管理员或不?我发现它does not看起来只有一种方式工作快。

  VAR RM =新RoleManager< IdentityRole>(新Rolestore的< IdentityRole>(新ApplicationDbContext()));
        VAR角色= rm.FindByName(管理);
        布尔结果= User.IsInRole(role.Name); //真正

我们有别的办法吗?


解决方案

 布尔结果= User.IsInRole(管理)

要容易得多。 :)

How in mvc 5 I can found out role of logged user?

I made the user by this code

    private bool AddUserAndRole()
    {
        IdentityResult ir;
        var rm = new RoleManager<IdentityRole>
            (new RoleStore<IdentityRole>(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;
     }

After I loggin on site by that user. How in controller I can check if that user have role == "admin" or not? I found only one way which doesnt look works fast.

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

Do we have other ways?

解决方案

bool result = User.IsInRole("admin") 

Much easier. :)

这篇关于MVC 5检查用户角色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆