/// <summary> /// Metoda koja se poziva prilikom klika na gumb "Spremi promjene" /// (materijal se ažurira/dodaje se novi materijal u bazu) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BtnSpremiPromjene_Click(object sender, EventArgs e) { // varijabla koja se koristi u slučaju greške (sadržava poruku koja će se prikazati) string poruka = ""; // kod se nalazi unutar try-catch-finally bloka kako bi uspješno detektirali greške kao što su CONSTRAINT Violation try { using (var db = new Entities(Konstante.GetConnectionString())) { if (materijal == null) { materijal noviMaterijal = new materijal() { naziv_materijala = tbNazivMaterijala.Text, dimenzije = tbDimenzije.Text, sastav = tbSastav.Text, dodatne_informacije = tbDodatneInfo.Text, ID_jed_mjere = cbJedMjere.SelectedValue.ToString() }; if (!string.IsNullOrWhiteSpace(tbNazivMaterijala.Text) && !string.IsNullOrWhiteSpace(tbDimenzije.Text) && !string.IsNullOrWhiteSpace(tbSastav.Text)) { db.materijal.Add(noviMaterijal); db.SaveChanges(); } else { poruka = "Material name, dimensions and composition are mandatory fields!"; } } else { db.materijal.Attach(materijal); materijal.naziv_materijala = tbNazivMaterijala.Text; materijal.dimenzije = tbDimenzije.Text; materijal.sastav = tbSastav.Text; materijal.dodatne_informacije = tbDodatneInfo.Text; materijal.ID_jed_mjere = cbJedMjere.SelectedValue.ToString(); materijal.ID_materijal = int.Parse(tbIdMaterijal.Text); if (!string.IsNullOrWhiteSpace(tbNazivMaterijala.Text) && !string.IsNullOrWhiteSpace(tbDimenzije.Text) && !string.IsNullOrWhiteSpace(tbSastav.Text)) { db.SaveChanges(); } else { poruka = "Material name, dimensions and composition are mandatory fields!"; } } } } catch (Exception) { poruka = "Error occurred while saving material (does this user already exist?)";; } finally { if (!string.IsNullOrWhiteSpace(poruka)) { MessageBox.Show(poruka); } else { Close(); } } }
public FrmUrediDodajMaterijal(object _materijal) { InitializeComponent(); materijal = (materijal)_materijal; jedinicaMjereLogika = new JedinicaMjereLogika(); }