Exemple #1
0
        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));
        }
Exemple #2
0
        // 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));
        }