I understand that a good way to check if an user is in a role is:
if (User.IsInRole(\"Admin\"))
{
}
However How can I check if my user is
I wanted to elaborate a little on mattytommo's answer, here is what I use:
Extension Method:
public static bool IsInAnyRole(this IPrincipal user, string[] roles)
{
//Check if authenticated first (optional)
if (!user.Identity.IsAuthenticated) return false;
var userRoles = Roles.GetRolesForUser(user.Identity.Name);
return userRoles.Any(roles.Contains);
}
Constants:
public static class Role
{
public const string Administrator = "Administrator";
public const string Moderator = "Moderator";
}
Usage:
if (User.IsInAnyRole(new [] {Role.Administrator,Role.Moderator}))
{
//Do stuff
}