public async Task <ActionResult <Season> > PostSeason(SeasonModel model) { try { var location = _linkGenerator.GetPathByAction("GetSeason", "Seasons", new { id = -1 }); if (string.IsNullOrWhiteSpace(location)) { return(BadRequest("Could not use ID")); } var season = _mapper.Map <Season>(model); await _seasonRepository.AddAsync(season); if (await _sharedRepository.SaveChangesAsync() > 0) { return(Created(location, _mapper.Map <SeasonModel>(season))); } } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, Settings.DatabaseFailureString)); } return(BadRequest()); }
public async Task <IActionResult> Create([Bind("Year,NumOfWeeksScheduled,NumOfWeeksCompleted")] Season season) { if (ModelState.IsValid) { await _seasonRepository.AddAsync(season); await _sharedRepository.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(season)); }
public async Task HandleAsync() { var updateData = await _malApiService.GetSeasonDataAsync(); if (updateData is null) { return; } var existingSeason = await _seasonRepository.GetAsync(season => season.Year == updateData.NewestSeasonYear && season.Name == updateData.NewestSeasonName); if (existingSeason is null) { var newSeason = new AnimeSeason { Name = updateData.NewestSeasonName, Year = updateData.NewestSeasonYear }; await _seasonRepository.AddAsync(newSeason); } }