如何獲取節點屬性?所以,我使用Linq To Xml來解析文件。 我嘗試做這樣的:通過c#獲取xml節點屬性
// load doc and then give elements.
XDocument doc = XDocument.Load(pathToFile);
var elem = doc.Root
.Elements("mode")
.Where(o => o.Attribute("name") != null)
.Elements("file")
.Where(k => k.Attribute("name") !=null && k.Attribute("name").Value == filenameTag)
.Elements("model")
.Where(o => o.Attribute("name") != null)
.Elements("class")
.Where(c => c.Attribute("name") != null);
foreach (var el in elem)
{
Console.WriteLine("First Attribute "+el.FirstAttribute.ToString());
Console.WriteLine("Name "+el.Name);
Console.WriteLine("Last Attribute " + el.LastAttribute.ToString());
var nodes=el.Nodes();
foreach (var node in nodes)
{
Console.WriteLine("node "+node.ToString());
}
}
XML文件:
<modes>
<mode name="mode1">
<file name="file1.xml">
<model name="Config" AllClasses="false">
<ignore.class class="class5"/>
<class name="class1" allProprs="true"/>
<class name="class2" allProps="false">
<property name="pr1"/>
<ignore.property property="pr2"/>
</class>
</model>
</file>
</mode>
</modes>
所以,我只得到字符串是這樣的:
node <property name="pr1" />
node <ignore.property property="pr2" />
可是如何才能讓值 「PR1」 和「PR2」?
謝謝!