public void EditWorkout(IEditWorkoutView form, Workout workout, IWorkoutRepository workoutRepository, IExerciseRepository exerciseRepository) { if (form.ConfirmEditWorkout(workout) == true) { try { string workoutName = form.WorkoutName; int setsPerExercise; try { setsPerExercise = form.SetsPerExercise; if (setsPerExercise < 1) { throw new Exception(); } } catch (Exception) { MessageBox.Show("Please input valid number of sets per exercise."); return; } if (String.IsNullOrEmpty(workoutName)) { MessageBox.Show("Please input your workout name."); return; } List <string> exerciseNames = form.ExerciseNames; List <Exercise> exercises = new List <Exercise>(); foreach (var exerciseName in exerciseNames) { var exercise = exerciseRepository.GetExerciseByName(exerciseName); exercises.Add(exercise); } workout.WorkoutName = workoutName; workout.Exercises = exercises; workout.SetsPerExercise = setsPerExercise; workoutRepository.EditWorkout(workout); } catch (Exception ex) { MessageBox.Show("EXCEPTION: " + ex.Message); throw; } } }