我有一个简单的XML文件,如下所示:
<Institutions>
<FI name = "NameOne">
<longname>some text</longname>
<APIKey>some text</APIKey>
<connectstring>some text</connectstring>
</FI>
<FI name = "NameTwo">
<longname>some text</longname>
<APIKey>some text</APIKey>
<connectstring>some text </connectstring>
</FI>
</Institutions>
使用LINQ to XML我可以获取整个文件,查找“longname”,“APIKey”和“connectionstring”的所有值,但我无法弄清楚如何找到所有“名称”值或如何只获取每个FI名称值下面的三条信息。为了清楚起见,我将没有IDEA提前知道名称=值。
我正在使用:
XElement root = XElement.Load("c:\\directory\\Data_Config.xml");
和
IEnumerable<XElement> Fis =
from el in root.Elements("Institutions")
select el;
根据MSDN文档加载文件。所有这些引用似乎都暗示了我将要查询的名称值是什么。
我用谷歌搜索,尝试了不同的属性/元素查询,都没有运气。我很确定这很简单,但它正在躲避我。
如何获取此数据?
谢谢,
杰森
答案 0 :(得分:7)
var xml = XElement.Load (@"c:\directory\Data_Config.xml");
var query =
from e in xml.Descendants("FI")
select e.Attribute("name").Value;