C# XML Veri Silme dersimiz ile XML Üzerinde İşlemler ders serimize devam ediyoruz. Bu dersimizde önceki dersimizde olduğu gibi DataGridView’den aldığımız verilere istinaden silme işlemini yapacağız.
C# XML Veri Silme
Bu dersimizde DataGridView’den aldığımız verileri kullanarak XML Dosyadan Veri Silme işlemini yapacağız. Öncelikle önceki dersimizdeki DataGridView’den veri çekme için hazırladığımız kodları bu dersimize tekrar ekleyelim.
XDocument xDoc = new XDocument(); string directory_path = _000_Classlar.Global.AppPath + "//XML"; string file_path = _000_Classlar.Global.AppPath + "//XML//Personeller.xml"; int xml_ID = 0; void DataGridView_Doldur(string path) { DataSet dataSet = new DataSet(); dataSet.ReadXml(path); try { dataGridView1.DataSource = dataSet.Tables[0]; } catch (IndexOutOfRangeException) { lbl_bildirim.Text = "XML Dosyası boş olduğundan gösterilecek veri bulunamadı."; } } private void DataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { var dataIndexNo = dataGridView1.Rows[e.RowIndex].Index.ToString(); txt_ad.Text = dataGridView1.Rows[e.RowIndex].Cells["ad"].Value.ToString(); txt_soyad.Text = dataGridView1.Rows[e.RowIndex].Cells["soyad"].Value.ToString(); txt_id.Text = dataGridView1.Rows[e.RowIndex].Cells["id"].Value.ToString(); xml_ID = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["id"].Value.ToString()); }
Yukarıdaki kodlarımız, değişkenlerimiz ve DataGridView doldurma ve veri çekme kodlarımızdır. Şimdi XML Veri Silme kodlarımıza ve açıklamasına geçelim.
XML Veri Silme
void XML_Veri_Sil() { xDoc = XDocument.Load(file_path); XElement rootElement = xDoc.Root; foreach (XElement Personeller in rootElement.Elements()) { if (Personeller.Attribute("id").Value == txt_id.Text) { Personeller.Remove(); } } xDoc.Save(file_path); DataGridView_Doldur(file_path); }
Kodlarımızı açıklarsak;
- İlk olarak XML dosyamızı az önce tanımladığımız XDocument nesnesine yüklüyoruz.
- Root yani kök elementimizi alıyoruz.
- ForEach döngüsü ile txt_id nesnemizde yer alan id numarasına göre XML dökümanımızda arama yapıyoruz.
- “id” Attiributesi yani “id” özelliği elimizdeki id değerine uyan bir kayıt var ise
- O anda kontrol ediyor olduğumuz elementi Remove metodu ile siliyoruz
- XML dosyamızı kaydediyoruz.
- Verileri gridde gösteriyoruz.
**********************************************************
C# XML Üzerine İşlemler
Şuanki planıma göre toplamda 17 yazılık bir seri olacak. Genel başlıklar ise aşağıdaki gibi olacak. Elbette liste değişebilir. Belki bazılarından vazgeçerim belki dersleri birleştiririm belli olmaz.
- √ – XML Nedir? Kullanımı, Temel Özellikleri ve Örneği
- √ – XML Oluşturma
- √ – XML Verileri Gridde Gösterme
- √ – XML Veri Ekleme
- √ – XML Veri Güncelleme
- √ – XML Veri Silme
- √ – XML İşlemleri Class Hazırlama
- √ – XML URL’den Okuma
- Bu ders için ek bir ders açmamaya karar verdim. file_path değişkenine xml url si yazmanız yeterli olacaktır.
- √ – DataSet ile XML Dosyası Nasıl Oluşturulur
- √ – XML Dosyası ile DataSet Nasıl Oluşturulur ve Okunur?
- √ – SQL’den bir XML dosyası nasıl oluşturulur
- Bu ders içinde ek bir ders açmamaya karar verdim. SQL server bağlantısı yapıp bir select sorgusunu dataset’e atamasını yaptıktan sonra 9. maddedeki işlemleri uygulayabilirsiniz.
- √ – XML dosyasında nasıl arama yapılır?
- √ – Bir XML dosyasında filtreleme
- √ – XML’den veritabanına veri nasıl eklenir
- Bu ders içinde ek bir ders açmamaya karar verdim. DataSet’e eklediğimiz verileri for döngüsü ile sql’e kaydet işlemi yapıyoruz sadece. Bu sebeple ek ders eklemeye gerek yok arkadaşlar.
- √ – XML’den Excel dosyası nasıl oluşturulur
- Bu dersi hazırlarken kodlarda bir sorun yaşadım ve o sorunu çözemedim. Bu sebeple bu dersi iptal ediyorum arkadaşlar. Elbette bu kodlar çok önceden elimde vardı. büyük ihtimalle bu sebeple çalışmadılar.
- √ – Excel’den XML dosyası nasıl oluşturulur
- √ – XML dosyasından bir TreeView nasıl oluşturulur
Hatta bu listeyi, bu serideki her yazının altına eklerim.
**********************************************************
C# XML Veri Silme dersimizde bu kadardı arkadaşlar. Diğer derslerimizde görüşmek üzere.
C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.
Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…
Takipte ve Sağlıcakla kalın.