2015-11-25 70 views
0

我目前正在使用一個循環,它給了我一個變量,然後需要被饋送到一個Xpath方法來讓我有任何節點的屬性等於我的變量。到目前爲止,我已經瞭解到,XPath允許你使用如果屬性等於預定義的字符串,選擇一個節點

root.SelectNodes("Element[@Attribute='SpecificValue']") 

但是在XML文檔中選擇一個節點,我想知道是否有辦法,我可以插入一個預定義變量在特定值,所以我可以在循環的每個迭代中獲取一組不同的節點。

例如是這樣的:

string attribValue= "test" 
root.SelectNodes("Element[@Attribute = attribValue]") 

回答

1

使用string formatting

string attribValue = "test"; 
string expression = String.Format("Element[@Attribute = '{0}']", attribValue); 
root.SelectNodes(expression); 
+0

完美!感謝你及時的答覆。 – Luke4792

0

使用XML的LINQ

  XDocument doc = new XDocument(); 
 
      XElement root = (XElement)doc.FirstNode; 
 
      string attribValue= "test"; 
 
      var results = root.Descendants("Element").Where(x => x.Attribute("Attribute").Value == attribValue).ToList();​

相關問題