private void BoekenInfo_Load(object sender, EventArgs e) { using (BoekenEntities ctx = new BoekenEntities()) { Boeken MijnBoek = ctx.Boeken.Where(b => b.Id == MijnBoekID).FirstOrDefault(); Uitgeverijen uitgeverij = ctx.Uitgeverijen.Where(u => u.Id == MijnBoek.UitgeverId).FirstOrDefault(); var genreLijst = ctx.BoekenGenres.Where(bg => bg.BoekId == MijnBoek.Id).Join(ctx.Genres, gl => gl.GenreId, g => g.Id, (gl, g) => new { g.Genre }).ToList(); var auteurLijst = ctx.BoekenAuteurs.Where(ba => ba.BoekId == MijnBoekID).Join(ctx.Auteurs, ba => ba.AuteurId, a => a.Id, (ba, a) => new { Naam = a.Voornaam + " " + a.Achternaam }).ToList(); lblTitel.Text = MijnBoek.Titel; lblPaginas.Text = MijnBoek.AantalPaginas.ToString(); lblScore.Text = MijnBoek.Score.ToString(); lblPublicatie.Text = Convert.ToDateTime(MijnBoek.Publicatie).ToString("dd MMM yy"); lblUitgeverij.Text = uitgeverij.Naam; lbAuteurs.DataSource = auteurLijst; lbAuteurs.DisplayMember = "Naam"; lbGenres.DataSource = genreLijst; lbGenres.DisplayMember = "Genre"; } }
//EventHandlers private void btnBoekToevoegen_Click(object sender, EventArgs e) { Boeken nieuwBoek = new Boeken(); nieuwBoek.Titel = tbTitel.Text; nieuwBoek.AantalPaginas = (int)numAantalPaginas.Value; nieuwBoek.Score = (int)numScore.Value; nieuwBoek.UitgeverId = (int)cbUitgeverij.SelectedValue; nieuwBoek.Publicatie = dtPublicatieDatum.Value; using (BoekenEntities ctx = new BoekenEntities()) { ctx.Boeken.Add(nieuwBoek); foreach (var item in lbGenres.SelectedItems) { ctx.BoekenGenres.Add(new BoekenGenres() { BoekId = nieuwBoek.Id, GenreId = (item as Genres).Id }); } foreach (var item in lbAuteurs.SelectedItems) { ctx.BoekenAuteurs.Add(new BoekenAuteurs() { BoekId = nieuwBoek.Id, AuteurId = (item as ListItem).Id }); } ctx.SaveChanges(); } DialogResult = DialogResult.OK; this.Close(); }
private void btnToevoegen_Click(object sender, EventArgs e) { nieuwGenre.Genre = tbNaam.Text; using (BoekenEntities ctx = new BoekenEntities()) { ctx.Genres.Add(nieuwGenre); } DialogResult = DialogResult.OK; this.Close(); }
private void updateComboBoxUitgeverij() { using (BoekenEntities ctx = new BoekenEntities()) { var uitgeverijQuery = ctx.Uitgeverijen.Select(g => g).ToList(); cbUitgeverij.DisplayMember = "Naam"; cbUitgeverij.ValueMember = "Id"; cbUitgeverij.DataSource = uitgeverijQuery; } }
private void updateListBoxGenre() { using (BoekenEntities ctx = new BoekenEntities()) { var genresQuery = ctx.Genres.Select(g => g).ToList(); lbGenres.DisplayMember = "Genre"; lbGenres.ValueMember = "Id"; lbGenres.DataSource = genresQuery; } }
private void btnToevoegen_Click(object sender, EventArgs e) { nieuweAuteur.Voornaam = tbVoornaam.Text; nieuweAuteur.Achternaam = tbAchternaam.Text; using (BoekenEntities ctx = new BoekenEntities()) { ctx.Auteurs.Add(nieuweAuteur); ctx.SaveChanges(); } DialogResult = DialogResult.OK; }
//EVENT HANDLERS private void btnToevoegen_Click(object sender, EventArgs e) { nieuweUitgeverij.Naam = tbNaam.Text; using (BoekenEntities ctx = new BoekenEntities()) { ctx.Uitgeverijen.Add(nieuweUitgeverij); ctx.SaveChanges(); } DialogResult = DialogResult.OK; this.Close(); }
private void btnVerwijderen_Click(object sender, EventArgs e) { var categorie = cbCategorie.SelectedItem.ToString(); var selectedID = (int)lbBoeken.SelectedValue; using (BoekenEntities ctx = new BoekenEntities()) { switch (categorie) { case "Boeken": var boek = ctx.Boeken.Where(b => b.Id == selectedID).FirstOrDefault(); if (MessageBox.Show($"Ben je zeker dat je {boek.Titel} wil verwijderen?", "Verwijderen", MessageBoxButtons.YesNo) == DialogResult.Yes) { ctx.BoekenAuteurs.RemoveRange(ctx.BoekenAuteurs.Where(b => b.BoekId == boek.Id)); ctx.BoekenGenres.RemoveRange(ctx.BoekenGenres.Where(b => b.BoekId == boek.Id)); ctx.Boeken.Remove(boek); } break; case "Auteurs": var auteur = ctx.Auteurs.Where(a => a.Id == selectedID).FirstOrDefault(); if (MessageBox.Show($"Ben je zeker dat je {auteur.Voornaam} {auteur.Achternaam} wil verwijderen", "Verwijderen", MessageBoxButtons.YesNo) == DialogResult.Yes) { ctx.BoekenAuteurs.RemoveRange(ctx.BoekenAuteurs.Where(a => a.AuteurId == auteur.Id)); ctx.Auteurs.Remove(auteur); } break; case "Genres": var genre = ctx.Genres.Where(g => g.Id == selectedID).FirstOrDefault(); if (MessageBox.Show($"Ben je zeker dat je het genre: {genre.Genre} wil verwijderen?", "Verwijderen", MessageBoxButtons.YesNo) == DialogResult.Yes) { ctx.BoekenGenres.RemoveRange(ctx.BoekenGenres.Where(g => g.Id == genre.Id)); ctx.Genres.Remove(genre); } break; case "Uitgeverij": var uitgeverij = ctx.Uitgeverijen.Where(u => u.Id == selectedID).FirstOrDefault(); if (MessageBox.Show($"Ben je zeker dat je de uitgeverij: {uitgeverij.Naam} en al zijn uitgebrachte boeken wil verwijderen?", "Verwijderen", MessageBoxButtons.YesNo) == DialogResult.Yes) { ctx.Boeken.RemoveRange(ctx.Boeken.Where(b => b.UitgeverId == uitgeverij.Id)); ctx.Uitgeverijen.Remove(uitgeverij); } break; default: break; } ctx.SaveChanges(); updateLB(categorie); } }
//UPDATE BOXES private void updateListBoxAuteur() { using (BoekenEntities ctx = new BoekenEntities()) { var auteurQuery = ctx.Auteurs.Select(a => new ListItem() { Id = a.Id, Naam = (a.Voornaam + " " + a.Achternaam) }).ToList(); lbAuteurs.DisplayMember = "Naam"; lbAuteurs.ValueMember = "Id"; lbAuteurs.DataSource = auteurQuery; } }
public void updateLB(string categorie) { switch (categorie) { case "Boeken": using (BoekenEntities ctx = new BoekenEntities()) { var queryBoeken = ctx.Boeken.Select(b => new { b.Id, b.Titel }).ToList(); lbBoeken.DataSource = queryBoeken; lbBoeken.DisplayMember = "Titel"; lbBoeken.ValueMember = "Id"; } break; case "Auteurs": using (BoekenEntities ctx = new BoekenEntities()) { var queryAuteurs = ctx.Auteurs.Select(a => new { naam = a.Voornaam + " " + a.Achternaam, a.Id }).ToList(); lbBoeken.DataSource = queryAuteurs; lbBoeken.DisplayMember = "naam"; lbBoeken.ValueMember = "Id"; } break; case "Genres": using (BoekenEntities ctx = new BoekenEntities()) { var genresQuery = ctx.Genres.Select(g => g).ToList(); lbBoeken.DataSource = genresQuery; lbBoeken.DisplayMember = "Genre"; lbBoeken.ValueMember = "Id"; } break; case "Uitgeverij": using (BoekenEntities ctx = new BoekenEntities()) { var uitgeverijQuery = ctx.Uitgeverijen.Select(g => g).ToList(); lbBoeken.DataSource = uitgeverijQuery; lbBoeken.DisplayMember = "Naam"; lbBoeken.ValueMember = "Id"; } break; default: break; } }
// METHODES private void LaadInfo() { var categorie = cbCategorie.SelectedItem.ToString(); var selectedID = (int)lbBoeken.SelectedValue; using (BoekenEntities ctx = new BoekenEntities()) { switch (categorie) { case "Boeken": FormBoekenInfo checkInfo = new FormBoekenInfo(); checkInfo.MijnBoekID = selectedID; checkInfo.ShowDialog(); break; case "Auteurs": MessageBox.Show("Auteurs Info"); break; case "Genres": MessageBox.Show("Genre Info"); break; case "Uitgeverij": MessageBox.Show($"Uitgeverij Info: {ctx.Uitgeverijen.Where(p => p.Id == selectedID).Select(p => p.Naam).FirstOrDefault()}"); break; default: break; } } }