C# 如何通过它读取单个XML节点';s属性?
我的XML是这样构建的: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 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是的。