public async Task <IActionResult> Change(ChangeExerciseViewModel viewModel)
        {
            if (viewModel != null)
            {
                if (ModelState.IsValid)
                {
                    Exercise exercise = new Exercise
                    {
                        Name        = viewModel.Name,
                        Id          = viewModel.Id,
                        Description = viewModel.Description,
                        UnitId      = viewModel.UnitId,
                        OwnWeight   = viewModel.OwnWeight
                    };

                    if (exercise.Id == 0) //ветка добавления
                    {
                        if (IsPresentInDB(exercise))
                        {
                            CreateTempData("ElementPresentinDBShort", "ElementPresentinDBLong");
                        }
                        else
                        {
                            await appContext.Exercises.AddAsync(exercise);

                            await appContext.SaveChangesAsync();
                        }
                    }
                    else // ветка обновления данных
                    {
                        if (await IsAllowedToModifyAsync(exercise))
                        {
                            appContext.Exercises.Update(exercise);
                            await appContext.SaveChangesAsync();
                        }
                        else
                        {
                            CreateTempData("ElementCannotBeChangedShort", "ElementCannotBeChangedLong");
                        }
                    }
                    return(RedirectToAction("List"));
                }
                else
                {
                    return(View(viewModel));
                }
            }
            else
            {
                CreateTempData("ElementIdNotFoundShort", "ElementIdNotFoundLong");
            }
            return(RedirectToAction("List"));
        }
        public IActionResult Modify(int id)
        {
            ViewBag.Tittle = "ModifyExercise"; // TODO: localization
            Exercise exercise  = appContext.Exercises.Include(x => x.Unit).Where(x => x.Id.Equals(id)).FirstOrDefault();
            var      units     = appContext.Units.ToList();
            var      viewModel = new ChangeExerciseViewModel
            {
                Id          = exercise.Id,
                Name        = exercise.Name,
                UnitId      = exercise.UnitId,
                Description = exercise.Description,
                OwnWeight   = exercise.OwnWeight,
                Units       = units
            };

            return(View("Change", viewModel));
        }