public async Task <IActionResult> Delete(TutorialCategoryDto categoryDto) { var response = await _tutorialCategoryService.DeleteAsync(categoryDto.Id); if (response == null) { return(NotFound()); } if (response.Success) { return(RedirectToAction(nameof(Index))); } ModelState.AddModelError(response.ModelStateErrorKey, response.Message); return(View(categoryDto)); }
public async Task <IActionResult> New(TutorialCategoryDto categoryDto) { if (!ModelState.IsValid) { return(View(categoryDto)); } var newCategory = _mapper.Map <TutorialCategory>(categoryDto); var response = await _tutorialCategoryService.CreateAsync(newCategory); if (response.Success) { return(RedirectToAction(nameof(Index))); } ModelState.AddModelError(response.ModelStateErrorKey, response.Message); return(View(categoryDto)); }
public async Task <TutorialCategoryResponse> UpdateAsync(TutorialCategoryDto categoryDto) { try { var categoryToUpdate = await FindByIdAsync(categoryDto.Id); if (categoryToUpdate == null) { return(null); } _mapper.Map(categoryDto, categoryToUpdate); await _unitOfWork.SaveAsync(); return(new TutorialCategoryResponse(categoryToUpdate)); } catch (DbUpdateException sqlEx) when(sqlEx.InnerException.HResult == (-2146232060)) { return(new TutorialCategoryResponse($"Zadane url již existuje", "UrlTitle")); } catch (Exception ex) { return(new TutorialCategoryResponse($"An error occurred when updating the category: {ex.Message}", "")); } }