mvc 5 check user role
43,565
bool result = User.IsInRole("admin")
Much easier. :)
Related videos on Youtube
Author by
Duke
I am .net developer from Ukraine. If you have some ideas I can help then Skype me duke_nuken23. Also I am making startup http://freemusiclib.com
Updated on July 09, 2022Comments
-
Duke almost 2 years
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?
-
Casey Sebben over 10 yearsuse Alex's answer or if your checking if a user should be allowed into the controller/webpage use [Authorize(Roles = "admin")] above your controller.
-
-
Henk Mollema over 10 yearsAh, you beat me to it.. :-)
-
Duke over 10 yearsDamn it! I was close! :)
-
John over 9 yearsdon't forget using Microsoft.AspNet.Identity