使用 MicrosoftClosedXml
和 DocumentFormat.OpenXml
NuGet 实用程序包时出现错误。在我更新了这些 NuGet 包(从 2.7.2 版到 2.8.1 版)之后,我现在得到了这个异常:
异常 System.IO.FileLoadException:无法加载文件或程序集“DocumentFormat.OpenXml,Version=2.7.2.0,Culture=neutral,PublicKeyToken=8fb06cb64d019a17”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)
当我查看解决方案项目中的相关程序集时,它引用了正确的版本 (2.8.1)。查看 NuGet 包管理器,没有引用旧的 2.7.2 版本(4 个项目引用了新版本 - 2.8.1)。我在任何对版本 2.7.2 的项目引用中都找不到提及。正在执行的应用程序文件夹中的文件也是正确的(2.8.1)(通过查看项目属性窗口的详细信息选项卡)。在我的解决方案中,这个对旧版本号的引用(显然是导致这个异常)的位置可能在哪里?
附加信息:我已经grep
对正在执行的应用程序目录中的所有文件(包括二进制文件)进行了检查,包括子目录,并且2.7.2
找不到该字符串。
此外,当我在 Visual Studio 中调试它时,它可以正常工作而不会引发异常。但是当我在部署的构建文件夹中运行它时,我得到了 FileLoadException。