【发布时间】:2015-08-10 21:42:52
【问题描述】:
我有一个 XML 文件,其中包含 IP 地址及其分配的位置/楼层,如下所示:
<Locations>
<LOCATION1>
<FLOOR1>
<SECTION1>
<IP>10.10.10.10</IP>
<IP>etc....
</SECTION1>
</FLOOR1>
</LOCATION1>
.....
我试图做的是获取 IP 地址的查询并返回父元素的名称。我能够查询该 IP,但我没有任何运气弄清楚如何获取父元素名称(即 SECTION1、FLOOR1、LOCATION1)。这是我用于查询 xml 以查找 IP 的代码,我只是让它返回该值以验证我的查询是否成功:
var query = from t in xmlLocation.Descendants("IP")
where t.Value.Equals(sIP)
select t.Value;
【问题讨论】:
-
XElement有一个名为Parent的属性链接到它的父元素。您可以使用它来遍历树直到根。 -
您正在寻找
.Ancestors()。
标签: c# xml linq linq-to-xml