在dotnet core 2.0中进行Xml diff比较

时间:2017-11-07 06:20:00

标签: xml compare asp.net-core-mvc .net-core

我正在AspNetCore 2.0中编写一个MVC webapp,需要识别和定位我生成的xml文档中的更改,以便我可以标记更改的元素并确定是否需要次要或主要版本增量。

在寻找如何做到这一点的答案时,我找不到很多具体的答案。

我找到了旧的XmlDiffPatch工具的端口,但它需要框架,显然不适用于核心。这个类的功能有点稀疏但非常好而且快速,一旦我弄清楚diffgram是如何构造的,我可以很容易地使用它来识别文档中已更改的部分。

然而,我在想(希望)没有找到关于这个主题的很多帖子的原因可能是这是一项微不足道的任务,没有人愿意写下它。

目前执行此任务的最佳API是什么?

(corefx团队将XmlDiffPatch引入核心2.0的几率是多少?)

1 个答案:

答案 0 :(得分:2)

经过几个小时的深入研究后,我得出的结论是XmlDiffPatch具有我最喜欢的功能,我发现如果我安装了.Net framework 1.1,我可以从MS Download安装工具包,而这是包括原始源代码。

我把.cs文件放到一个新的NetStandard2.0 classlib项目中,编译的代码没有问题。

我将名为XmlDiffPatch.Core的包装推送到NuGet,并对XmlDiffView(称为XmlDiffView.Core)执行相同的操作,以便其他人可以使用它。