C# XML Dosyasında Nasıl Arama Yapılır?

C# XML Dosyasında Nasıl Arama Yapılır?

5 Eylül 2019 2 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 38
Yaklaşık okuma süresi : 5 DK
C# XML Dosyasında Filtreleme Nasıl Yapılır?
C# XML Dosyası ile DataSet Nasıl Oluşturulur ve Okunur?

C# XML Dosyasında Nasıl Arama Yapılır?, dersim ile C# XML Üzerine İşlemler ders serimize devam ediyorum. Bu derste, bir xml dosyasındaki veriler içerisinde arama yapmayı göreceğiz.

C# XML Dosyasında Nasıl Arama Yapılır?

Bu dersimizde xml dosya içerisinde arama yapacağız. Şimdi bu işlemi yapacak kodlarımızı görelim.

        private void Btn_xml_de_ara_Click(object sender, EventArgs e)
        {
            XmlReader xmlFile;
            xmlFile = XmlReader.Create(_000_Classlar.Global.AppPath + "\\_023_XML_Islemleri\\XML\\Proje.xml", new XmlReaderSettings());
            DataSet ds = new DataSet();
            DataView dv;
            ds.ReadXml(xmlFile);

            dv = new DataView(ds.Tables[0]);
            dv.Sort = "Proje_Adı";
            int index = dv.Find(txt_aranacak_metin.Text);

            if (index == -1)
            {
                lbl_sonuc.Text = "Sonuç: Bulunamadı.";
            }
            else
            {
                lbl_sonuc.Text = "Sonuç: Adı: " + dv[index]["Proje_Adı"].ToString() + " || Fiyatı:" + dv[index]["proje_Ucreti"].ToString();
            }
        }

Şimdi kodlarımızı açıklayalım;

Advertisements
  1. XmlReader türünde bir değişken tanımlıyoruz.
  2. XmlReader sınıfının Create metodu ile xml dosyamızı okuyoruz.
  3. DataSet tanımlaması yapıyoruz.
  4. DataView  tanımlaması yapıyoruz.
  5. Tanımladığımız DataSet’e okuduğumuz xml dosyasını atıyoruz.
  6. Tanımladığımız DataView’e, DataSet’e yüklediğimiz verilerden bir View alıyoruz.
  7. DataView’in Sort() metodu ile verilerimizi Proje_Adı elementine (Kolonuna ) göre sıralıyoruz.
  8. Bir int değişken tanımlayarak DataView’in Find() metodunu kullanıyoruz.
  9. Find() Metodumuza forma eklediğimiz ve arayacağımız metni yazacağımız textbox’ın text’ini gönderiyoruz.
  10. Eğer index -1 ise hiç kayıt bulunamamıştır. Çünkü index hiçbir zaman -1 olmaz.
  11. Eğer index -1 değil ise bir kayıt bulunmuştur .
  12. Else bloğundaki işlemler ise lbl_sonuc’a bulunan projenin adını ve fiyatını yazıyoruz.

XML Dosyamızın içeriği;

<?xml version="1.0" standalone="yes"?>
<Projeler>
  <Proje>
    <Proje_ID>1</Proje_ID>
    <Proje_Adı>Proje 1</Proje_Adı>
    <proje_Ucreti>1111</proje_Ucreti>
  </Proje>
  <Proje>
    <Proje_ID>2</Proje_ID>
    <Proje_Adı>Proje 2</Proje_Adı>
    <proje_Ucreti>2222</proje_Ucreti>
  </Proje>
  <Proje>
    <Proje_ID>3</Proje_ID>
    <Proje_Adı>Proje 3</Proje_Adı>
    <proje_Ucreti>3333</proje_Ucreti>
  </Proje>
  <Proje>
    <Proje_ID>4</Proje_ID>
    <Proje_Adı>Proje 4</Proje_Adı>
    <proje_Ucreti>4444</proje_Ucreti>
  </Proje>
  <Proje>
    <Proje_ID>5</Proje_ID>
    <Proje_Adı>deneme</Proje_Adı>
    <proje_Ucreti>5000</proje_Ucreti>
  </Proje>
  <Proje>
    <Proje_ID>6</Proje_ID>
    <Proje_Adı>deneme 2</Proje_Adı>
    <proje_Ucreti>5000</proje_Ucreti>
  </Proje>
</Projeler>

 

Ekran görüntüsü;

C# XML Dosyasında Nasıl Arama Yapılır

 

NOT: Bu dersi Github Projemde bulabilirsiniz.

İlgili İçerik  C# İp ile PC Kapatma ve Restart

**********************************************************

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.

  1. √ – XML Nedir? Kullanımı, Temel Özellikleri ve Örneği
  2. √ – XML Oluşturma
  3. √ – XML Verileri Gridde Gösterme
  4. √ – XML Veri Ekleme
  5. √ – XML Veri Güncelleme
  6. √ – XML Veri Silme
  7. √ – XML İşlemleri Class Hazırlama
  8. √ – 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.
  9. √ – DataSet ile XML Dosyası Nasıl Oluşturulur
  10. √ – XML Dosyası ile DataSet Nasıl Oluşturulur ve Okunur?
  11. √ – 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.
  12. √ – XML dosyasında nasıl arama yapılır?
  13. √ – Bir XML dosyasında filtreleme
  14. √ – 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.
  15. √ – 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.
  16. √ – Excel’den XML dosyası nasıl oluşturulur
  17. √ – XML dosyasından bir TreeView nasıl oluşturulur

Hatta bu listeyi, bu serideki her yazının altına eklerim.

**********************************************************

İlgili İçerik  C# ile Bilgisayar Kapatmak

 

Bu dersimizde bu kadar 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. 😉

C# XML Dosyasında Filtreleme Nasıl Yapılır?
C# XML Dosyası ile DataSet Nasıl Oluşturulur ve Okunur?