例如,在下面的xml中,如果我有id
属性,则可以在C#中获取相应的reportid
属性
xml代码:
<node text=" Acid Level versus Flowmeters" nodetype="1" reportid="118" id="626" />
<node text="Level versus Flowmeters" nodetype="1" reportid="119" id="627" />
<node text=" Bulk Levels" nodetype="1" reportid="120" id="629" />
<node text="Caustic and HCL" nodetype="1" reportid="121" id="630" />
c#代码:
string XMLFile = ConfigurationManager.AppSettings["XMLReportTreePath"];
XElement sitemap = XElement.Load(XMLFile);
XAttribute xatt = sitemap.Attribute(reportid); // where id = 630
由于
答案 0 :(得分:0)
这样的东西?
foreach (XmlNode chldNode in node.ChildNodes)
{
**//Read the attribute ID**
if (chldNode.ID== 630)
{
string reportid= chldNode.Attributes["reportid"].Value;
}
}
//只是一个例子,但是我可以理解你想要的东西
答案 1 :(得分:0)
假设您的xml文档有一个根节点:
var reportid = sitemap.Descendants("node")
.Where(el => el.Attribute("id").Value == "630")
.Select(el => el.Attribute("reportid").Value)
.FirstOrDefault();
// or, lookup of all reportid by id
var lookup = sitemap.Descendants("node")
.ToDictionary(el => el.Attribute("id").Value, el => el.Attribute("reportid").Value);