ASP.net ile XML formatındaki bir dosyaya ulaşmayı ve XML formatındaki dosyadan veri okumayı göreceğiz.
Kisaca koddan bahsetmek gerekirse once
DataSet objDataSet = new DataSet();
Komut satiri ile bir yeni bir dataset objesi yaratiyoruz. Daha sonraki satirda veri.Xml satirinda ki bilgileri datasetin içine gömüyoruz. Bir sonraki kodlarda XML formatindaki bir dosyadan okumak bu kadar kolay peki ya XML bir dosyaya yazmak veri eklemek nasil oluyor? gibi bilgiler. Yani veriyi istedigimizx gibi degistirebiliriz ne demek istedigimi asagidaki kodlara bakip daha iyi anliyacaksiniz.

okul.xml adi ile dosyamizi kaydedelim

XML:
  1. <?xml version="1.0" ?>
  2. <okullar>
  3.     <okul>
  4.          <adi>Avcilar Ilkokolu</adi>
  5.          <yeri>Avcilar</yeri>
  6.      </okul>
  7.       <okul>
  8.          <adi>Fatih Fen Lisesi</adi>
  9.          <yeri>Beylikduzu</yeri>
  10.       </okul>
  11.        <okul>
  12.           <adi>Bogazici Universitesi</adi>
  13.           <yeri>Bebek</yeri>
  14.       </okul>
  15. </okullar>

Böylece XML dosyamızı hazırlamış olduk şimdi bu dosyaya ulaşıp içindeki veriyi okumayı görelim.

ASP:
  1. <%@ Import NameSpace="System.Data" %>
  2. <%@ Import NameSpace="System.Data.OleDb" %>
  3. <script language="C#" runat="server">
  4. void Page_Load(object sender, EventArgs e)
  5. {
  6. DataSet objDataSet = new DataSet();
  7. objDataSet.ReadXml(Server.MapPath("okul.xml"));
  8. dgOkul.DataSource = objDataSet.Tables[0].DefaultView;
  9. dgOkul.DataBind();
  10. }
  11. </script>
  12. <html>
  13. <body>
  14. <asp :DataGrid ID="dgOkul" Runat="server" />
  15. </body>
  16. </html>

ile okul.xml adlı dosyaya bağlanıp içindeki bilgileri ekrana döktük. Çıktı ise aşağıdaki şekilde olacaktır.

adi yeri
Avcilar Ilkokulu Avcilar
Fatih Fen Lisesi Belikduzu
Bogazici Universitesi Bebek

CODE:
  1. DataSet objDataSet = new DataSet();

Komut satırı ile bir yeni bir dataset objesi yaratıyoruz. Daha sonraki satırda okul.xml dosyasında ki bilgileri datasetin içine gömüyoruz. Bir sonraki satirda dgOkul adli DataGridimizin kaynak verisi olarak okudugumuz XML dosyayı göstertiyoruz.

ASP:
  1. <%@ Import NameSpace="System.Data" %>
  2. <%@ Import NameSpace="System.Data.OleDb" %>
  3. <script language="C#" runat="server">
  4. void Page_Load(object sender, EventArgs e)
  5. {
  6. DataSet objDataSet = new DataSet();
  7. objDataSet.ReadXml(Server.MapPath("okul.xml"));
  8. dgOkul.DataSource = objDataSet.Tables[0].DefaultView;
  9. dgOkul.DataBind();
  10.  
  11. //Varolan satirda degisiklik yapiyoruz
  12. objDataSet.Tables["okul"].Rows[0]["adi"] = "kasimpasa lisesi";
  13. objDataSet.Tables["okul"].Rows[0]["yeri"] = "kasimpasa";
  14.  
  15. //Yeni bir satir ekliyoruz
  16.  
  17. DataTable objTable = null;
  18. DataRow objNewRow = null;
  19. objTable = objDataSet.Tables["okul"];
  20. objNewRow["adi"] = "besiktas anadolu lisesi";
  21. objNewRow["yeri"] = "besiktas";
  22. objTable.Rows.Add(objNewRow);
  23.  
  24. //Simdi bunu farkli bir XML dosyasi olarak kaydedelim okul1.xml adi ile
  25. objDataSet.WriteXml(Server.MapPath("okul1.xml"));
  26.  
  27. //XML dosyadan okuyalim
  28. DataSet objDataSet2 = new DataSet();
  29. objDataSet2.ReadXml(Server.MapPath("okul1.xml"));
  30.  
  31. dgOkul1.DataSource = objDataSet2.Tables[0].DefaultView;
  32. dgOkul1.DataBind();
  33. }
  34. </script>
  35. <html>
  36. <body>
  37. <table>
  38. <tr>
  39. <td><asp :DataGrid id="dgOkul" runat="server" /></td>
  40. <td><asp :DataGrid id="dgOkul1" runat="server" /></td>
  41. </tr>
  42. </table>
  43. </body>

Yukarida ki kodun çıktısı aşağıdaki gibi olacaktır.

adi yeri
Avcilar Ilkokolu Avcilar
Fatih Fen Lisesi Beylikduzu
Bogazici Universitesi Bebek
adi yeri
kasimpasa lisesi kasimpasa
Fatih Fen Lisesi Beylikduzu
Bogazici Universitesi Bebek
besiktas anadolu lisesi besiktas

Kısaca kodda neler yaptığımızdan bahsedeyim. İlk bölümde yaptiğımız bir önceki kod ile ayni okul.xml dosyamızı ekranda görüntülüyoruz Daha Sonra ilk satırımızda değişiklik yapıyoruz.

objDataSet.Tables["okul"].Rows[0]["adi"] = "kasimpasa lisesi";

Satırı ile okul table'ındaki birinci satırda bulunan adi isimli alana kasimpasa lisesini atıyoruz. Daha sonraki makalelerimizde XML konusuna daha ayrintılı değineceğiz.

Bundan sonra yaptığımız önce yeni bir DataTable ve DataRow tanımlamak. Ve bunlara yeni ekliyecegimiz değikenleri atıyoruz. Ve ekleme işlemini gerçeklestiriyoruz. Bunları okul1.xml dosyası altında kaydedip ekrana basıyoruz.

Favorilerinize Ekleyin.
  • BlinkList
  • del.icio.us
  • Digg
  • Netvouz
  • DZone
  • ThisNext
  • MisterWong
  • Wists
  • blogmarks
  • Blue Dot
  • Furl
  • Netscape
  • NewsVine
  • Reddit
  • Shadows
  • Technorati
  • YahooMyWeb
  • Fark
  • feedmelinks
  • Fleck
  • kick.ie
  • LinkaGoGo
  • Linkter
  • MyShare
  • Spurl
  • Webride