// GET: CursusWinkel/Create public IActionResult Create() { CursusCreateViewModel viewModel = new CursusCreateViewModel(); viewModel.Cursus = new Cursus(); viewModel.CursusBeschrijving = new CursusBeschrijving(); viewModel.LessenLijst = new SelectList(_context.Lessen, "LesID", "Naam"); viewModel.GeselecteerdeLessen = new List <int>(); ViewData["DocentID"] = new SelectList(_context.Docenten, "DocentID", "DocentNaam"); return(View(viewModel)); }
public async Task <IActionResult> Create(CursusCreateViewModel viewModel) { if (ModelState.IsValid) { _context.Add(viewModel.CursusBeschrijving); int saveCheck = await _context.SaveChangesAsync(); if (saveCheck != 0) { viewModel.Cursus.CursusBeschrijvingID = viewModel.CursusBeschrijving.CursusBeschrijvingID; List <CursusInhoud> cursusInhoud = new List <CursusInhoud>(); int index = 1; foreach (int lesID in viewModel.GeselecteerdeLessen) { cursusInhoud.Add(new CursusInhoud { LesID = lesID, CursusID = viewModel.Cursus.CursusID, LesIntervalWeken = 1, Positie = index }); index++; } _context.Add(viewModel.Cursus); await _context.SaveChangesAsync(); Cursus cursus = await _context.Cursussen.Include(o => o.CursusInhoud) .SingleOrDefaultAsync(x => x.CursusID == viewModel.Cursus.CursusID); cursus.CursusInhoud.AddRange(cursusInhoud); _context.Update(cursus); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } } ViewData["DocentID"] = new SelectList(_context.Docenten, "DocentID", "DocentNaam", viewModel.Cursus.DocentID); return(View(viewModel)); }