用什么方法把下面一段xml 里FieldName属性读出来
<BookMapping xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" BookName="ServiceRewards" DatabaseName="CDIPOptimizationSample">
<SheetMappingList>
<SheetMapping SheetName="数据表单" TableName="table1" SampleRows="0">
<CloumnMappingList>
<CloumnMapping CloumnName="单板名称" FieldName="ProjectName" AllowNull="true" />
<CloumnMapping CloumnName="所在产品" FieldName="PrintVersion" AllowNull="true" />
<CloumnMapping CloumnName="开发代表(RDPDT)" FieldName="RDPDT" AllowNull="true" />
<CloumnMapping CloumnName="HQA" FieldName="HQA" AllowNull="true" />
<CloumnMapping CloumnName="绝对规模(初始估计)" FieldName="pla-ext01" AllowNull="true" />
<CloumnMapping CloumnName="等效新增规模(初始估计)" FieldName="Npla-ext02" AllowNull="true" />
</CloumnMappingList>
</SheetMapping>
</SheetMappingList>
</BookMapping>
//1.加载XML
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(@"C:\test.xml");
//2.使用Xpath查找节点
XmlNodeList xnl = xmlDoc.SelectNodes("/BookMapping/SheetMappingList/SheetMapping/CloumnMappingList/CloumnMapping");
//3.遍历每个节点,读取需要的内容
foreach (XmlNode var in xnl)
{
//4.这里就能拿到FieldName的内容
string colValue = var.Attributes["FieldName"].Value;
}
我最想看你的全部遍历出来。不要看指定的 求指教。
如果你使用 Linq,你甚至可以用 XML to Linq 的方式写。代码如下。
var elements = doc.Root.Element("SheetMappingList").Element("SheetMapping").Element("CloumnMappingList").Elements("CloumnMapping");
foreach (var element in elements)
{
Console.WriteLine(element.Attribute("FieldName").Value);
}