public ActionResult Create(WorkoutRegimenViewModel wrfvmToAdd)
        {
            try
            {
                FitnessUser currentUser = fitnessUserRepository.FindByUserName(User.Identity.Name).Single();

                wrfvmToAdd.WorkoutRegimen.WorkoutRegimenId = 0; // clear primary key value so that DB can create new value
                workoutRegimenRepository.Add(currentUser, wrfvmToAdd.WorkoutRegimen);
                workoutRegimenRepository.Save();
                string redirectToPage = (wrfvmToAdd.HasDistanceData() ? "Edit" : "Details");
                return RedirectToAction(redirectToPage, new { id = wrfvmToAdd.WorkoutRegimen.WorkoutRegimenId });
            }
            catch
            {
                WorkoutRegimen workoutRegimen = new WorkoutRegimen() {
                    StartDate = DateTime.Today
                };
                return View(new WorkoutRegimenViewModel(workoutRegimen, fitnessUserRepository.DataContext));
            }
        }
 public ActionResult Edit(int id, WorkoutRegimenViewModel workoutRegimenModel)
 {
     FitnessUser currentUser = null;
     WorkoutRegimen workoutRegimen = null;
     try
     {
         currentUser = fitnessUserRepository.FindByUserName(User.Identity.Name).Single();
         workoutRegimen = workoutRegimenRepository.GetWorkoutRegimen(currentUser, id);
     }
     catch
     {
         return View("InvalidUser");
     }
     // try block 2: updating the model -- go back to edit form if invalid
     try
     {
         UpdateModel(workoutRegimen, "WorkoutRegimen");
         workoutRegimenRepository.Save();
         return RedirectToAction("Details", new { id=workoutRegimen.WorkoutRegimenId });
     }
     catch
     {
         return View(new WorkoutRegimenViewModel(workoutRegimen, fitnessUserRepository.DataContext));
     }
 }