JetBrains的dotPeek也可以使用,而且是免费的。
在dotPeek中打开程序集
选择程序集
文件->导出为项目
选择磁盘上的位置
针对您想要比较的程序集重复以上步骤,然后在差异工具中打开这两个文件夹。我使用的是WinMerge。
您会注意到绝大多数文件都有差异,这是因为文件顶部有注释,类似于此示例:
// MVID: {some guid here}
// Assembly location: {some path here}
您可以在WinMerge中创建一个过滤器来忽略它
工具 --> 过滤器...
进入“行过滤器”选项卡
添加以下过滤器 ^// MVID:
添加以下过滤器(可选)^// Assembly location:
勾选新正则表达式旁边的复选框
勾选“启用行过滤器”复选框
当您确认更改时,它会重新扫描文件夹并忽略以该注释开头的任何行。现在您应该只看到您感兴趣的更改。