Identificación de ASP.NET Identity 2.0 si el usuario actual está en el rol IsInRole

Con ASP.NET Identity 2.0, ¿cómo verifica si el usuario que inició sesión actualmente tiene un rol? Estoy usando lo siguiente, pero me pregunto si hay algo más eficiente.

var um = new UserManager(new UserStore(new DbContext())); var au = um.FindByEmail(Context.User.Identity.GetUserName()); var inrole = um.IsInRole(au.Id, "Admin"); if (inrole) { } 

    La forma correcta en ASP Identity es tan simple como

     User.IsInRole("rolename"); 

    Puede obtener el ID de usuario de Identity en lugar de tener que buscar al usuario en la base de datos …

     var um = new UserManager(new UserStore(new DbContext())); var inrole = um.IsInRole(Context.User.Identity.GetUserId(), "Admin"); 

    Suponiendo que estés en ASP.NET, es bastante simple:

     if (!Roles.IsUserInRole(User.Identity.Name, "Administrators")) { return "You are not authorized to access this page."; ) 

    (desde http://msdn.microsoft.com/en-us/library/4z6b5d42%28v=vs.110%29.aspx )

    esto funcionó para mí espero que esto ayude …

     If HttpContext.Current.User.IsInRole("admin") Then adminmnu.Visible = True End If