private void btnMusteriEkle_Click(object sender, EventArgs e) { if (Metotlar.BosAlanVarMi(pnlMusteriler)) { MessageBox.Show("Boş alanları doldurmak zorundasınız !!"); } else { if ((txtTcNo.Text).Length < 11 || (txtTcNo.Text).Length > 11) { MessageBox.Show("Lütfen TC No için 11 karakter giriniz"); } else { Musteri musteri = new Musteri() { TcKimlikNo = txtTcNo.Text, Ad = txtAd.Text, Soyad = txtSoyad.Text, DogumTarihi = dtDogumTarihi.Value.Date, Memleket = txtMemleket.Text, NufusResim = Metotlar.ConvertImageToByte(pbKimlik.Image), UyeID = uyeId //fk }; db.Musteriler.Add(musteri); db.SaveChanges(); MessageBox.Show("Müşteri bilgisi kaydedildi."); pbKimlik.Tag = null; Metotlar.Temizle(pnlMusteriler); btnTamamla.Enabled = true; } } }
// async - await --> İşlemleri bir kerede yapmayı sağlar. //Asenkron çalışma prensibi , yürütülen süreçlerin uzun sürmesinden dolayı , yürütülmesi gereken diğer süreçlerin beklemeden çalışmasına devam edilmesini sağlar. private async void pbResimKaydet_Click(object sender, EventArgs e) { //DONE: //cmb seçilmediyse uyarı versin. if (cmbArabaListesi.SelectedIndex != -1) { Araba araba = db.Arabalar.Where(x => x.ID == (int)cmbArabaListesi.SelectedValue).FirstOrDefault(); foreach (Control item in pnlResimIslem.Controls) { if (item is PictureBox && item.Name.StartsWith("pbAraba")) { if (((PictureBox)item).Tag != null) { Resim resim1 = new Resim() { Fotograf = Metotlar.ConvertImageToByte(((PictureBox)item).Image), ID = araba.ID, }; db.Resimler.Add(resim1); } } } await db.SaveChangesAsync(); MessageBox.Show("Resimler başarılı bir şekilde kaydedildi.", "Mesaj Bilgisi", MessageBoxButtons.OK, MessageBoxIcon.Information); Metotlar.Temizle2(pnlResimIslem); } else { MessageBox.Show("Lütfen seçeneklerden hangi araba için resim ekleneceğini seçiniz.."); } }