public async Task <ActionResult> Genre(MusicViewModel genre) { var model = new MusicViewModel() { Genres = await _genreRepository.GetAllyAsync() }; var genreModel = new Genre(); try { if (!ModelState.IsValid) { ModelState.AddModelError(string.Empty, "لطفا مقدار های مناسب پر کنید"); } if (string.IsNullOrEmpty(genre.GenreOldName)) { genre.GenreOldName = genre.GenreNewName; } genreModel = await _genreRepository.GetByNameAsync(genre.GenreOldName); if (genre.ActionType == "create" || genre.ActionType == "edit") { if (genreModel == null) { await _genreRepository.CreateAsync(new Genre { Name = genre.GenreOldName, }); model.Genres = await _genreRepository.GetAllyAsync(); //return RedirectToAction("Section", new { surveyName = surveys.SurveyTitle }); return(View(model)); } else { genreModel.Name = (genre.GenreOldName == genre.GenreNewName ? genre.GenreOldName : genre.GenreNewName); await _genreRepository.EditAsync(genreModel.Id, genreModel); } } else { await _genreRepository.DeleteAsync(genreModel.Id); } model.Genres = await _genreRepository.GetAllyAsync(); //return RedirectToAction("Section", new { surveyName = model.GenreOldName }); return(View(model)); } catch (Exception e) { ModelState.AddModelError(string.Empty, e.Message); return(View(model: model)); } }
[HttpPost] //Создание нового public async Task <IActionResult> Post([FromBody] GenreDto item) { try { return(Ok(await _genRepo.CreateAsync(item))); } catch (Exception ex) { return(StatusCode(500, ex)); } }
public async Task <Response <Exception, Genre> > Handle(GenreCreateCommand request, CancellationToken cancellationToken) { var genreMap = Mapper.Map <GenreCreateCommand, Genre>(request); var newGenreCallback = await _genreRepository.CreateAsync(genreMap); if (newGenreCallback.HasError) { return(newGenreCallback.Error); } return(newGenreCallback.Success); }
public async Task <IActionResult> Upsert(GenreModel obj) { if (ModelState.IsValid) { var objFromDb = await _genreRepo.GetAsync(SD.GenreAPIPath, obj.Id, HttpContext.Session.GetString("JWToken")); if (obj.Id == Guid.Empty) { await _genreRepo.CreateAsync(SD.GenreAPIPath, obj, HttpContext.Session.GetString("JWToken")); } else { await _genreRepo.UpdateAsync(SD.GenreAPIPath + obj.Id, obj, HttpContext.Session.GetString("JWToken")); } return(RedirectToAction(nameof(Index))); } else { return(View(obj)); } }