30 Ekim 2016 Pazar

XmlWriter sınıfı

Hadi bizde Xml yapalım

XmlWriter sınıfı bana göre kullanımı en rahat, izlenebilir ve büyük verilerle oynayabileceginiz bir araç.
Genelde yazılımlarımda bu sınıfı kullanırım. Şimdiye kadar bir sorununu görmedim.

using (XmlWriter writer = XmlWriter.Create("haber.xml"))
{

}
Crreate metodu verilen xml dosyası  yazılacak yolu isityor. Web sitelerinde kullanırken yazma izniniz olması lazım.

writer.WriteStartDocument();  xml dokumanının başladığını,
writer.WriteStartElement("Haber"); ile haber elemanının bu dokümana eklendiğini belirtiyoruz
şeklinde oluyor
<Haber>
</Haber>
WriteElementString ile string şeklinde elementlerimnizi yazıyoruz. Parametreleri element adı ve değeri

şimdi bir class yaratalım

  public class Haber
    {
        public string Type { get; set; }
        public DateTime Tarih { get; set; }
        public string Web { get; set; }
        public string ImagePath { get; set; }
        public string Title { get; set; }
        public string ShortDesc { get; set; }
        public string LongDesc { get; set; }
        public string ImagePathDesc { get; set; }
        public int StoreId{ get; set; }
        public bool IsSlider { get; set; }
        public bool IsTopSlider { get; set; }
        public bool IsBottomSlider { get; set; }
        public string Tags{ get; set; }
        public int NumberOfViews { get; set; }
        public int NumberOfLike { get; set; }
        public int NumberOfDisLike { get; set; }
  
    }
 IList<Haber> Haberler = new List<Haber>();
ve haberler  listimizi xml formatında  haberler.xml dosyasına yazdıralım


using (XmlWriter writer = XmlWriter.Create("haberler.xml"))
{
    writer.WriteStartDocument();
    writer.WriteStartElement("Haberler");//<Haberler> root elemanı actık

    foreach (var haber  in haberler)
    {
    writer.WriteStartElement("Haber");  //<Haber> elemanını açtık

    writer.WriteElementString("Type", haber.Type);   // <-- <Type ="H"/> satırını oluşturduk
        writer.WriteElementString("Tarih ", haber.Tarih.ToString() );   //DateTime  değişken tipini stringe çevirdik
        writer.WriteElementString("Web ", haber.Web ); 
        writer.WriteElementString("ImagePath", haber.ImagePath); 
        writer.WriteElementString("Title ", haber.Title );
        writer.WriteElementString("ShortDesc", haber.ShortDesc ); 
        writer.WriteElementString("LongDesc", haber.LongDesc ); 
        writer.WriteElementString("ImagePathDesc", haber.ImagePathDesc ); 
        writer.WriteElementString("StoreId", haber.StoreId); //Int tipini stringe çevirdik
        writer.WriteElementString("IsSlider ", haber.IsSlider.ToString() );   //bool tipini stringe çevirdik
        writer.WriteElementString("IsTopSlider ", haber.IsTopSlider.ToString() ); 
        writer.WriteElementString("IsBottomSlider ", haber.IsBottomSlider.ToString() ); 
        writer.WriteElementString("Tags", haber.Tags);
        writer.WriteElementString("NumberOfViews ", haber.NumberOfViews.ToString() );  //Int tipini stringe çevirdik
        writer.WriteElementString("NumberOfLike ", haber.NumberOfLike.ToString() );
        writer.WriteElementString("NumberOfDisLike ", haber.NumberOfDisLike.ToString() ); 
  

    writer.WriteEndElement(); //</Haber> elemanı kapattık
    }

    writer.WriteEndElement();//</haberler> Root elemanını kapattık
    writer.WriteEndDocument();//xml dosyamız sonlandı. Artık kullanıma hazır


}
}

http://epubevi.com 

Sağlıcakla Kalın

Serdar GÜNER

Hiç yorum yok:

Yorum Gönder