나는이 같은 XML이 :Xml Linq를 사용하여 여러 수준의 특성 값을 검색하는 방법은 무엇입니까?
<?xml version="1.0" encoding="iso-8859-1" ?>
<Menu>
<Group Flow="Horizontal">
<Item Text="Basket" >
<Item Text="Favorites">
<Item Text="Add" Roles="SuperAdmin">
<Item Text="Evaluation" Roles="Admin">
</Item>
<Item Text="Titularisation" Roles="users,Admin">
</Item>
</Item>
</Group>
</Menu>
을 나는 모두가 "역할" 속성 검색 할.
나는이 시도 :XElement rootElement = XElement.Load(@"C:\Users\TTM\Desktop\GeneralMenu.xml");
XElement menuElt = rootElement.Element("Group");
var itemsAdd = from el in menuElt.Descendants("Item")
where (string)el.Attribute("Text") == "Add"
select el;
foreach (var item in itemsAdd)
{
Console.WriteLine(item.Attribute("Roles").Value);
}
Console.Read();
을하지만 난 단지 "역할"이 발리의 수 :
<Item Text="Add" Roles="SuperAdmin">
당신 Text = "Add"로만 항목을 선택하면 itemsAdd- collection을 채 웁니다. 그래, 그래. –
예. 알아. 나는 다음과 같이하려고했다 :'XElement itemAdd = from menuElt.Descendants ("Item") where (string) el.Attribute ("Text") == "추가" select el; – mosflex