GAAnalytics4

2010-03-17

Xpath ile SelectNodes/SelectSingleNode


Bir XmlDocument nesnesinde bazen belli bir tag'e ait bütün dalları getirmek istediğimizde
Dim nodes as System.Xml.XmlNodeList = xDocument.SelectNodes("//Etiket")

yazdığımız da o XmlDocument de Etiket tag'i olsa bile gelmeyebilir.
Bunun nedeni büyük ihtimalle Namespace'lerden kaynaklanır.
Hızlı bir şekilde çözmek için
Dim nodes As System.Xml.XmlNodeList = xml.GetElementsByTagName ("Etiket")

şeklinde kullanmak yeterli olacaktır.
Yok "ben kasarım!" diyenlerdenseniz ilgili kodu buyrun :

Dim xmlns As New System.Xml.XmlNamespaceManager(xDocument.NameTable)
Dim prefix As String = xml.DocumentElement.GetNamespaceOfPrefix("")
xmlns.AddNamespace("ns", prefix)
Dim nodes As System.Xml.XmlNodeList = xml.SelectNodes("//ns:Etiket", xmlns)