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.