private static HashSet <int> GetFeaturesByUserId(string userId) { HashSet <int> result = new HashSet <int>(); var listProfiles = DBUserProfiles.GetByUserId(userId); if (listProfiles != null && listProfiles.Count() > 0) { var listProfilesId = listProfiles.Select(s => s.IdPerfil).ToList(); foreach (var profileId in listProfilesId) { var listAccessProfile = DBAccessProfiles.GetByProfileModelId(profileId).ToList(); if (listAccessProfile != null && listAccessProfile.Count() > 0) { var listProfileFeatures = new HashSet <int>(); listProfileFeatures = listAccessProfile.Select(s => s.Funcionalidade).ToHashSet <int>(); result.UnionWith(listProfileFeatures); } } } var listUserAccess = DBUserAccesses.GetByUserId(userId); if (listUserAccess != null && listUserAccess.Count() > 0) { var listFeatures = new HashSet <int>(); listFeatures = listUserAccess.Select(s => s.Funcionalidade).ToHashSet <int>(); result.UnionWith(listFeatures); } return(result); }
public static bool Delete(PerfisModelo ProfileModelToDelete) { try { using (var ctx = new SuchDBContext()) { DBUserProfiles.DeleteAllFromProfile(ProfileModelToDelete.Id); ctx.Remove(ProfileModelToDelete); ctx.SaveChanges(); } return(true); } catch (Exception ex) { return(false); } }