用于比较 XML 树结构的 C# 库

C# Library to compare XML tree structures

我想编写一个 C# 应用程序来比较两个 XML 文件的树结构。 IE。我不关心节点的内容,但前提是两个文件中使用了相同的标签(顺序无关紧要)。

然后我想输出仅在其中一个文件中找到的节点。

是否有可用于此目标的库?我想应该有比较 XMLs 是一个已经实现了很多次的功能。到目前为止,我只发现了看似过时的 Microsoft Diff and Patch library,据我所知,它不提供忽略节点内容的选项。使用似乎过时的库也感觉不对。

当你不想比较内容而只关心结构时,让我们去掉内容吧!

您可以使用内置的 XmlDocument class 将两个 XML 文件加载到内存中,然后从根开始,沿着树向下并删除所有内容(如你不关心它)。然后你可以通过一个普通的文件差异库(例如Google-diff-match-patch

获取这些扩充文件和运行它们