public void SuspendUser(Func<user, bool> predicate) { using (var context = new appsterEntities()) { context.Configuration.AutoDetectChangesEnabled = false; var users = context.users.Where(predicate); try { foreach (var usr in users) { usr.status = usr.status == 0 ? 1 : 0; context.Entry(usr).State = System.Data.Entity.EntityState.Modified; } } finally { context.Configuration.AutoDetectChangesEnabled = true; context.SaveChanges(); } } }
public async Task UpdateUser(user updatedUser) { if (!GetRoles().Any(i => i.id == updatedUser.role_id)) throw new AppsRequiredDataIsNullException(); using (var context = new appsterEntities()) { var checkData = context.users.SingleOrDefault(i => i.id != updatedUser.id && (i.username == updatedUser.username || i.email == updatedUser.email)); if (checkData == null) { context.users.Add(updatedUser); context.Entry(updatedUser).State = System.Data.Entity.EntityState.Modified; await context.SaveChangesAsync(); } else { if (checkData.username == updatedUser.username) throw new AppsUsernameAlreadyExistException(); if (checkData.email == updatedUser.email) throw new AppsEmailAlreadyExistException(); } } }