public void RemovePermissions(Roles role, PermissionRule[] permissions) { AutoRentEntities context = new AutoRentEntities(); DbTransaction transaction = null; try { context.Connection.Open(); transaction = context.Connection.BeginTransaction(); foreach (PermissionRule perm in permissions) { RulesInRole rules = context.RulesInRole.First(o => o.RoleId == role.Id && o.PermId == perm.Id); context.RulesInRole.DeleteObject(rules); } context.SaveChanges(); transaction.Commit(); } catch { transaction.Rollback(); } finally { context.Connection.Close(); } }
public void AddPermissionsToRole(Roles role, PermissionRule permission, RulesInRole rulesInRole) { AutoRentEntities context = new AutoRentEntities(); DbTransaction transaction = null; try { context.Connection.Open(); transaction = context.Connection.BeginTransaction(); rulesInRole.RoleId = role.Id; rulesInRole.PermId = permission.Id; context.SaveChanges(); transaction.Commit(); } catch { transaction.Rollback(); } finally { context.Connection.Close(); } }
public void InsertRulesInRole(RulesInRole rulesInRole) { if ((rulesInRole.EntityState != EntityState.Detached)) { this.ObjectContext.ObjectStateManager.ChangeObjectState(rulesInRole, EntityState.Added); } else { this.ObjectContext.RulesInRole.AddObject(rulesInRole); } }
public void DeleteRulesInRole(RulesInRole rulesInRole) { if ((rulesInRole.EntityState != EntityState.Detached)) { this.ObjectContext.ObjectStateManager.ChangeObjectState(rulesInRole, EntityState.Deleted); } else { this.ObjectContext.RulesInRole.Attach(rulesInRole); this.ObjectContext.RulesInRole.DeleteObject(rulesInRole); } }
public RulesInRole CheckPermissionForRole(Roles role, PermissionRule permission) { RulesInRole res = null; AutoRentEntities context = new AutoRentEntities(); IEnumerable <RulesInRole> list = from perm in context.PermissionRule from rulesInRole in context.RulesInRole where rulesInRole.RoleId == role.Id && rulesInRole.PermId == perm.Id select rulesInRole; if (list != null) { res = list.First(); } return(res); }
public RulesInRole CheckPermissionForUser(string login, PermissionRule permission) { RulesInRole res = null; AutoRentEntities context = new AutoRentEntities(); IEnumerable <RulesInRole> list = from roles in context.Members.First(o => o.Login == login).Roles from perm in context.PermissionRule from rulesInRole in context.RulesInRole where rulesInRole.RoleId == roles.Id && rulesInRole.PermId == perm.Id select rulesInRole; if (list != null) { res = list.First(); } return(res); }
public void UpdateRulesInRole(RulesInRole currentRulesInRole) { this.ObjectContext.RulesInRole.AttachAsModified(currentRulesInRole, this.ChangeSet.GetOriginal(currentRulesInRole)); }