C#:比较两个xml文件

C#:比较两个xml文件,c#,xml,linq,xml-parsing,linq-to-xml,C#,Xml,Linq,Xml Parsing,Linq To Xml,我想写一个函数来比较两个XML文件。根据以下情况,差异可能是由于 节点和节点的顺序 某些节点或属性可能已被添加或删除 我已经找到了一个通过使用递归函数或linqtoxml遍历XML的解决方案,因此基本上我可以获得所有节点和属性。我已经读过关于项目的内容,但我正在努力避免依赖于我的项目。增加的复杂性是确定发生差异的线路,但目前这是可选的 我目前正在考虑将这两个XML文件的节点和属性存储到一个数据结构(例如字典)中,稍后再比较字典,但我不太确定如何实现这一点。你能分享一些想法吗?需要做的是XNode

我想写一个函数来比较两个XML文件。根据以下情况,差异可能是由于

  • 节点和节点的顺序
  • 某些节点或属性可能已被添加或删除
  • 我已经找到了一个通过使用递归函数或linqtoxml遍历XML的解决方案,因此基本上我可以获得所有节点和属性。我已经读过关于项目的内容,但我正在努力避免依赖于我的项目。增加的复杂性是确定发生差异的线路,但目前这是可选的


    我目前正在考虑将这两个XML文件的节点和属性存储到一个数据结构(例如字典)中,稍后再比较字典,但我不太确定如何实现这一点。你能分享一些想法吗?

    需要做的是
    XNode.DeepEquals(XDocument.Load(“file1.xml”)、XDocument.Load(“file2.xml”))
    ,但这只会给你一个布尔结果,而不会指示差异在哪里。

    是的,这会起作用。但是我需要如何确定差异发生在哪一行呢。请参见编辑