C# 如何通过它读取单个XML节点';s属性?

C# 如何通过它读取单个XML节点';s属性?,c#,xml,database,C#,Xml,Database,我的XML是这样构建的: <?xml version="1.0" encoding="utf-8" ?> <Pages> <Page id="1" title="myTitle"> Content </Page> <Page id="2" title="myTitle2"> Content2 </Page> </Pages> 所容纳之物 内

我的XML是这样构建的:

<?xml version="1.0" encoding="utf-8" ?>
<Pages>

    <Page id="1" title="myTitle">
        Content
    </Page>

    <Page id="2" title="myTitle2">
        Content2
    </Page>

</Pages>

所容纳之物
内容2

如何在C代码中通过ID获取内容?

您可以将其加载到XmlDocument中,然后调用:

xmldocument.SelectSingleNode("/Pages/Page[Id = '1']")

您可以将其加载到XmlDocument中,然后调用:

xmldocument.SelectSingleNode("/Pages/Page[Id = '1']")

我会使用LINQ到XML以及类似的东西:

var document = XDocument.Load(...);
var page = document.Descendants("Page")
                   .Where(x => (int) x.Attribute("id") == id)
                   .FirstOrDefault();

现在,
page
将是第一个具有给定
id
XElement
,如果找不到,则为null。

我将使用LINQ to XML以及类似以下内容:

var document = XDocument.Load(...);
var page = document.Descendants("Page")
                   .Where(x => (int) x.Attribute("id") == id)
                   .FirstOrDefault();

现在
page
将是第一个
XElement
,具有给定的
id
,如果找不到,则为空。

@YuriyFaktorovich,+1-但我想我已经知道了-我想XML是一个“数据库”@AndrasZoltan是的。@YuriyFaktorovich,+1-但我想我已经知道了-我想XML是一个“数据库”@AndrasZoltan是的。