public async Task <IActionResult> Create(CreateOpleidingViewModel viewModel) { if (ModelState.IsValid) { // viewModel.GeselecteerdeKlanten is null when no Klant was selected in the view. if (viewModel.GeselecteerdeKlanten == null) { viewModel.GeselecteerdeKlanten = new List <int>(); } List <KlantOpleiding> nieuweKlanten = new List <KlantOpleiding>(); foreach (int klantID in viewModel.GeselecteerdeKlanten) { nieuweKlanten.Add(new KlantOpleiding { KlantID = klantID, OpleidingID = viewModel.Opleiding.OpleidingID }); } _context.Add(viewModel.Opleiding); await _context.SaveChangesAsync(); Opleiding opleiding = await _context.Opleiding.Include(o => o.KlantOpleidingen) .SingleOrDefaultAsync(x => x.OpleidingID == viewModel.Opleiding.OpleidingID); opleiding.KlantOpleidingen.AddRange(nieuweKlanten); _context.Update(opleiding); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); }
// GET: Opleiding/Create public IActionResult Create() { CreateOpleidingViewModel viewModel = new CreateOpleidingViewModel { Opleiding = new Opleiding(), KlantenLijst = new SelectList(_context.Klanten, "KlantID", "VolledigeNaam"), GeselecteerdeKlanten = new List <int>() }; return(View(viewModel)); }