使用Linq到XML (c#)我如何找到属性值

本文关键字:何找 属性 Linq XML 使用 | 更新日期: 2023-09-27 18:08:56

我有一个简单的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到XML,我可以抓取整个文件,找到"longname","APIKey"answers"connectstring"的所有值,但我不知道如何找到所有的"name"值,或者如何只抓取每个FI名称值下面的三个信息。为了明确一点,我将事先不知道name= values是什么。

我用:

XElement root = XElement.Load("c:''directory''Data_Config.xml");

IEnumerable<XElement> Fis =
from el in root.Elements("Institutions")
select el;

加载文件,按照MSDN文档。它的所有引用似乎都暗示了我要查询的name值是什么。

我用谷歌搜索过,尝试过不同的属性/元素查询,都没有运气。我很确定这是一些简单的东西,但它回避了我。

我如何得到这些数据?

谢谢,杰森

使用Linq到XML (c#)我如何找到属性值

var xml = XElement.Load (@"c:'directory'Data_Config.xml");
var query = 
    from e in xml.Descendants("FI")
    select e.Attribute("name").Value;