【发布时间】:2014-12-02 11:14:26
【问题描述】:
我有一个这样的 XML 文件,我想读取 ID、短名称、名称节点值。
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<AccountingUnitList xmlns="http://www.google.com">
<AccountingUnit>
<ID>17406</ID>
<ShortName>test</ShortName>
<Name>test</Name>
</AccountingUnit>
<AccountingUnit>
<ID>18006</ID>
<ShortName>ANOTHERtest</ShortName>
<Name>Anothertest</Name>
</AccountingUnit>
<AccountingUnit>
<ID>18046</ID>
<ShortName>RKU</ShortName>
<Name>hospital</Name>
</AccountingUnit>
<AccountingUnit>
<ID>18047</ID>
<ShortName>MNU</ShortName>
<Name>MNU</Name>
</AccountingUnit>
</AccountingUnitList>
递归读取 Node 元素的最佳方法是什么?
这就是我尝试读取节点值的方式:
var accountingunit = (
from e in XDocument.Parse(textresult).Root.Elements("AccountingUnit")
select new node
{
idvalue = (string)e.Element("ID"),
shortname =(string)e.Element("ShortName"),
name = (string)e.Element("Name"),
});
foreach(var unit in accountingunit)
{
Console.WriteLine("ID"+ unit.idvalue + unit.name + unit.shortname);
}
这里是节点构造函数:
public class node
{
public string idvalue { get; set; }
public string shortname { get; set; }
public string name { get; set; }
}
【问题讨论】:
-
请显示您尝试过的内容。
标签: c# xml linq-to-xml