private void FaturaKaydet() { FaturaMaster fm = new FaturaMaster(); fm.IrsaliyeNo = Convert.ToInt32(txtIrsaliye.Text); fm.OdemeTarihi = dtpOdemeTarihi.Value; fm.MusteriID = (int)cmbMusteri.SelectedValue; db.FaturaMasters.Add(fm); db.SaveChanges(); lblFaturaID.Text = fm.FaturaID.ToString(); }
private void dgvFaturalar_CellClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex == -1 || dgvFaturalar.CurrentRow == null) { return; } //Satırı dolduran veriye bağlı nesneyi alır FaturaMaster faturaMaster = (FaturaMaster)dgvFaturalar.CurrentRow.DataBoundItem; FormFaturaDetay faturaDetayForm = new FormFaturaDetay(faturaMaster.faturadetay); faturaDetayForm.ShowDialog(); }
private void btnFaturaKaydet_Click(object sender, EventArgs e) { if (!CheckFaturaInputs()) { return; } FaturaMaster faturaMaster = new FaturaMaster() { FaturaID = _faturaID, faturadetay = _faturaDetaylari, FaturaTarihi = DateTime.Now, IrsaliyeNo = Convert.ToInt32(txtIrsaliyeNo.Text), MusteriID = _secilenMusteri.MusteriID, OdemeTarihi = dtpOdemeTarihi.Value, FaturaToplam = _faturaDetaylari.Select(f => f.GenelToplam).Sum() }; //Transaction işlemlerin hepsi başarılı olduğunda “Transaction” Commit (Onaylama)komutu çalışır ve değişiklikler veritabanında gerçekleşmiş olur. Eğer herhangi bir hata oluşursa bu işleyiş bozulur ve hepsi geri alınır o zamanda “transaction” Rollback (Geridönüş) komutu çalışır. Böylece tüm işlemler geri alınır ve en başa dönülür. Bunu yaparak veri kaybetme olasılığımız da sıfıra iner. //Begin Transaction komutu yeni bir transaction başlatır. İşlemleri onaylamak için veya iptal etmek için Commit veya Rollback komutunu beklemeye koyuluyor. DbContextTransaction tran = _db.Database.BeginTransaction(); try { _db.FaturaMasters.Add(faturaMaster); _db.SaveChanges(); ClearFaturaInputs(); //Commit Transaction komutu begin Transaction ile başlayan bütün işleri onaylar. Zaten bir transaction gerçekleşmişse ardından mutlaka Commit transaction gelmesi gerekir. tran.Commit(); } catch (Exception) { //Rollback Transaction komutu Begin ile başlatılan işlemlerin hepsini iptal eder. tran.Rollback(); MessageBox.Show("Beklenmeyen bir hata meydana geldi"); } }