public async Task <ValidationResult> UpdateAsync(int id, Unscramble unscramble, IEnumerable <Exercise> exercises) { if (id <= 0) { return(new ValidationResult(false, new ValidationError("The activity is invalid"))); } unscramble.SetId(id); if (!unscramble.AddExercises(exercises)) { return(new ValidationResult(false, unscramble.ValidationErrors)); } if (!unscramble.IsValid()) { return(new ValidationResult(false, unscramble.ValidationErrors)); } var unscrambleWasUpdated = await _unscrambleRepository.UpdateAsync(unscramble); if (!unscrambleWasUpdated) { return(new ValidationResult(false, new ValidationError("The activity wasn't found"))); } return(new ValidationResult(true)); }
public async Task <bool> UpdateAsync(Unscramble unscramble) { var savedUnscrambled = await GetAsync(unscramble.Id); if (savedUnscrambled == null) { return(false); } _dataContext.Exercises.RemoveRange(savedUnscrambled.Exercises); _dataContext.Entry(savedUnscrambled).CurrentValues.SetValues(unscramble); _dataContext.Exercises.AddRange(unscramble.Exercises); return(await _dataContext.SaveChangesAsync() > 0); }
public async Task <ValidationResult> CreateAsync(Unscramble unscramble, IEnumerable <Exercise> exercises) { if (!unscramble.IsValid()) { return(new ValidationResult(false, unscramble.ValidationErrors)); } if (!unscramble.AddExercises(exercises)) { return(new ValidationResult(false, unscramble.ValidationErrors)); } var createdUnscrumbleId = await _unscrambleRepository.CreateAsync(unscramble); if (createdUnscrumbleId <= 0) { return(new ValidationResult(false, new ValidationError("There was an error while creating the activity"))); } return(new ValidationResult(true)); }
public async Task <int> CreateAsync(Unscramble unscramble) { try { var unscrambledCreated = await _dataContext.AddAsync(unscramble); if (unscrambledCreated == null) { return(0); } await _dataContext.SaveChangesAsync(); return(unscrambledCreated.Entity.Id); } catch (Exception ex) { Debug.WriteLine(ex.Message); return(0); } }
public async Task <bool> DeleteAsync(Unscramble unscramble) { _dataContext.Remove(unscramble); return(await _dataContext.SaveChangesAsync() > 0); }