public class WebForm1 : System.Web.UI.Page { private void Page_Load(object sender, System.EventArgs e) { XmlNodeList Isimler,Isimler2,Isimler3,Isimler4,Isimler5; //XmlNodeList türinden değişkenlerimizi tanımlıyoruz. XmlTextReader rdr = new XmlTextReader("http://localhost/XmlQuery/kayitlar.xml"); // XmlTextReader sınıfı yardımı ile xml dökümanına erişiyoruz. XmlDocument MyXmlDoc = new XmlDocument(); MyXmlDoc.Load(rdr); //XmlDocument sınıfını xml dökümanı üzerinde işlem yapabilmek için kullanıyoruz // Xml domüanından id si 1 olan isimleri seçmek için Isimler = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@id='1']/Adi"); /* XmlDocumen.SelectNodes metoduna parametre olarak verdiğimiz XPATH e dikkat edin. */ for(int i = 0;i < Isimler.Count;i++) Response.Write(Isimler.Item(i).InnerXml.ToString()+""); // Sonuç "Tolga" olacaktır. // id si 1 veya 2 olan kayıtlar için Isimler2 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@id='1' or @id='2']/Adi"); for(int i = 0;i < Isimler2.Count;i++) Response.Write(Isimler2.Item(i).InnerXml.ToString()+""); // Sonuç "Tolga" ve "Utku" olacaktır. // id si 1 ve tipi A olan kayıtlar için Isimler3 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@id='1' and @tip='A']/Adi"); for(int i = 0;i < Isimler3.Count;i++) Response.Write(Isimler3.Item(i).InnerXml.ToString()+""); // Sonuç "Tolga" olacaktır. // tipi B olan kayıtların adının ilk iki harfi "Ut" olanlar Isimler4 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@tip='B']/Adi[substring(.,1,2) ='Ut']"); for(int i = 0;i < Isimler4.Count;i++) Response.Write(Isimler4.Item(i).InnerXml.ToString()+""); // Sonuç "Utku" olacaktır. // tipi B olan kayıtların adında "ura" geçenler Isimler5 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@tip='B']/Adi[contains(.,'ura')]"); for(int i = 0;i < Isimler5.Count;i++) Response.Write(Isimler5.Item(i).InnerXml.ToString()+""); // Sonuç "Murat" olacaktır. } }
XmlNodeList Isimler,Isimler2,Isimler3,Isimler4,Isimler5; //XmlNodeList türinden değişkenlerimizi tanımlıyoruz. XmlTextReader rdr = new XmlTextReader("http://localhost/XmlQuery/kayitlar.xml"); // XmlTextReader sınıfı yardımı ile xml dökümanına erişiyoruz. XmlDocument MyXmlDoc = new XmlDocument(); MyXmlDoc.Load(rdr); //XmlDocument sınıfını xml dökümanı üzerinde işlem yapabilmek için kullanıyoruz // Xml domüanından id si 1 olan isimleri seçmek için Isimler = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@id='1']/Adi"); /* XmlDocumen.SelectNodes metoduna parametre olarak verdiğimiz XPATH e dikkat edin. */ for(int i = 0;i < Isimler.Count;i++) Response.Write(Isimler.Item(i).InnerXml.ToString()+""); // Sonuç "Tolga" olacaktır. // id si 1 veya 2 olan kayıtlar için Isimler2 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@id='1' or @id='2']/Adi"); for(int i = 0;i < Isimler2.Count;i++) Response.Write(Isimler2.Item(i).InnerXml.ToString()+""); // Sonuç "Tolga" ve "Utku" olacaktır. // id si 1 ve tipi A olan kayıtlar için Isimler3 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@id='1' and @tip='A']/Adi"); for(int i = 0;i < Isimler3.Count;i++) Response.Write(Isimler3.Item(i).InnerXml.ToString()+""); // Sonuç "Tolga" olacaktır. // tipi B olan kayıtların adının ilk iki harfi "Ut" olanlar Isimler4 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@tip='B']/Adi[substring(.,1,2) ='Ut']"); for(int i = 0;i < Isimler4.Count;i++) Response.Write(Isimler4.Item(i).InnerXml.ToString()+""); // Sonuç "Utku" olacaktır. // tipi B olan kayıtların adında "ura" geçenler Isimler5 = MyXmlDoc.SelectNodes("/Kayitlar/Kayit[@tip='B']/Adi[contains(.,'ura')]"); for(int i = 0;i < Isimler5.Count;i++) Response.Write(Isimler5.Item(i).InnerXml.ToString()+""); // Sonuç "Murat" olacaktır. }