private void RemoveRolesFromUtility(UtilityRoleViewModel newUtilityRole) { var existingUtilityrRoles = GetAllRolesForAnUtility(newUtilityRole.UtilityId); foreach (var existingUtilityrRole in existingUtilityrRoles) { var result = newUtilityRole.RoleIds.Find(x => x.Equals(existingUtilityrRole.RoleID)); if (result == 0) { var recordToDelete = _commmonDBContext.Query <UtilityRole>().Where(x => x.UtilityID == existingUtilityrRole.UtilityID && x.RoleID == existingUtilityrRole.RoleID).FirstOrDefault(); _commmonDBContext.Delete(recordToDelete); } } }
public void SaveUtilityRole(UtilityRoleViewModel newUtilityRole) { var existingUtilityRoles = GetAllRolesForAnUtility(newUtilityRole.UtilityId); var newRolesForUtility = new List <UtilityRole>(); foreach (var item in newUtilityRole.RoleIds) { if (existingUtilityRoles.Find(x => x.RoleID == item) == null) { _commmonDBContext.Add(new UtilityRole { UtilityID = newUtilityRole.UtilityId, RoleID = item }); } } RemoveRolesFromUtility(newUtilityRole); }