-3

考虑您具有以下 xml 结构:

<root>
  <File> a.txt 
      <Version> 1.5 </Version>
  </File>

  <File> b.txt 
      <Version> 1.0 </Version>
  </File>
</root>

如何通过搜索处理XElement: <Version> 1.0 </Version>?我知道我可以按功能标签搜索,XElement.element(Xname) 但这对我没有帮助。

4

2 回答 2

2

Do you want a list of version's..Here it is!

XDocument doc=XDocument.Load(yourXML);
List<string> lst=doc.Descendants()
                    .Elements("Version")
                    .Select(x=>x.Value).ToList();
于 2013-05-19T13:43:48.663 回答
0

你的问题不清楚,所以我会根据我的理解回答

如果你想得到Versions 的列表,那么这段代码就足够了

var versions = xDoc.Descendants("Version").ToList();

如果你想从你的 xml 中提取其他信息,那么

var files = xDoc.Descendants("File")
                .Select(f => new
                {
                    File = f.Nodes().OfType<XText>().First().Value.Trim(),
                    Version = f.Element("Version").Value.Trim()
                })
                .ToList();

棘手的部分是获取文件名,例如b.txt因为XElement File还包含其子项的值 ( Version)

于 2013-05-19T14:27:12.383 回答