2013-12-13 4 views
0

Если myVariable = "Element", то дайте мне атрибут внутри этого элемента.XML-атрибут захвата от конкретного узла элемента

XML:

<Products> 
<Equity> 
    <servers> 
     <serverEQ>server1</serverEQ> 
     <serverEQ>server2</serverEQ> 
     <serverEQ>server3</serverEQ> 
    </servers> 
<sitesE> 
     <sitesEQ sitePathEQ="\Logs\W3SVC1"><nameEQ>SystemAdmin Site</nameEQ></sitesEQ> 
     <sitesEQ sitePathEQ="\Logs\W3SVC3"><nameEQ>Direct Access Site</nameEQ></sitesEQ> 
     <sitesEQ sitePathEQ="\Logs\W3SVC4"><nameEQ>Redirect Site</nameEQ></sitesEQ> 
     <sitesEQ sitePathEQ="\Logs\W3SVC5"><nameEQ>Download Site</nameEQ></sitesEQ> 
</sitesE> 
</Equity> 
. 
. 
. 
</Products> 

Например: Если myVariable = "Direct Access Site" дать мне \Logs\W3SVC3 как мой выход.

+0

Я нашел ответ Хуссейна Narimani Rad наиболее полезным. Спасибо – SlopTonio

ответ

3

Не ясно, что именно вы хотите, но это может поможет:

var myVariable = "Direct Access Site"; 
XDocument doc = XDocument.Load(your file); 
var result = doc.Descendants("sitesEQ") 
       .Where(i => i.Element("nameEQ").Value == myVariable) 
       .Select(i => i.Attribute("sitePathEQ").Value); 

foreach (string item in result) 
{ 
    Console.WriteLine(item); 
} 
+0

Большое вам спасибо! – SlopTonio

Смежные вопросы