比较C#中的两个XmlNode

oil*_*lio 5 .net c# xml xmlnode

有没有一种简单的方法来比较两个XML结构,以确定它们是否具有相同的结构和数据?

我有一个返回XmlNode的函数,我正在尝试为它编写单元测试.我将正确的XML结果存储在一个文件中.在测试中,我将文件加载到XmlDocument中,找到正确的XmlNode并与函数的结果进行比较.直接比较不起作用(如预期的那样),而且InnerXml也不起作用.我正在考虑从InnerXml中删除所有空格并比较它,或者编写我自己的比较来走树,但我不喜欢这两个选项.

Sri*_*ddi 8

XNode.DeepEquals.在使用之前阅读警告.


Ste*_*idi 2

如果您必须使用XmlDocument及其支持类型,请考虑使用 Microsoft 的XmlDiffPatch,它对 XML 数据结构执行可自定义的差异操作。