public static int[] GetActionRoles(string action, string controller) { Teste5Entities db = new Teste5Entities(); var listaGrupos = db.GrupoFuncionalidade.Where(x => x.Controller == controller && x.Metodo == action).ToList(); return(listaGrupos.Select(x => x.IdGrupo).ToArray()); }
protected override bool AuthorizeCore(HttpContextBase httpContext) { CreateSession(); if (httpContext == null) { throw new ArgumentNullException("HttpContext"); } var usuario = httpContext.Session["USUARIO"] as Usuario; Teste5Entities db = new Teste5Entities(); var grupo = db.GrupoUsuario.Where(gu => gu.IdUsuario == usuario.Id).SingleOrDefault(); var listaGrupos = db.GrupoFuncionalidade.Where(gf => gf.IdGrupo == grupo.IdGrupo).ToList(); if (Roles.Any(x => listaGrupos.Any(y => y.IdGrupo == x))) { return(true); } return(false); }