处理具有不同结构和不同名称的xml文件

时间:2010-05-01 21:22:22

标签: .net xml linq linq-to-xml

我有一个方法,我希望不同的用户传递给我xml文件。这些文件对于我要查找的元素将具有不同的名称,而我正在寻找的元素可能位于不同的结构中。我的第一印象是我们应该告诉他们以标准格式传递xml。然而,这就是他们拥有数据的方式,他们坚持认为如果他们不必转换数据会更容易。

如何处理所有类型的数据?

让他们通过字典吗? number = mydata / numbers

他们在没有实际更改数据的情况下向我定义数据的最简单方法是什么?

SAMPLE1

<numbers>
15
</numbers>

SAMPLE2

<mydata>
<mynumbers>
15
</mynumbers>
</mydata>

1 个答案:

答案 0 :(得分:0)

LINQ to XML可以非常轻松地处理不同格式的文档。例如,对于您提到的两个文档,此查询将获得“15”:

XDocument doc = XDocument.Load("input.xml");
var result = doc.Descendants().Where(e => e.Name.ToString().Contains("numbers"));