public async Task <IActionResult> SetPoints(SeasonSetPointsModel model) { if (model is null) { return(NotFound()); } var season = await Context.Seasons.SingleAsync(s => s.SeasonId == model.SeasonId); // Clear the dictionary if it contains any values if (season.PointsPerPosition.Count > 0) { season.PointsPerPosition.Clear(); } Dictionary <int, int?> pairs = new Dictionary <int, int?>(); int position = 1; foreach (var points in model.Points) { pairs.Add(position, points); position++; } foreach (var pair in pairs) { season.PointsPerPosition.Add(pair); } _seasons.Update(season); await _seasons.SaveChangesAsync(); return(RedirectToAction(nameof(Settings), new { seasonID = model.SeasonId })); }
public async Task <IActionResult> SetPoints(int seasonID) { var season = await Context.Seasons.SingleOrDefaultAsync(s => s.SeasonId == seasonID); var model = new SeasonSetPointsModel { SeasonId = seasonID, SeasonNumber = season.SeasonNumber }; foreach (var value in season.PointsPerPosition.Values) { model.Points.Add(value.Value); } return(View(model)); }