“无法加载要执行的参考程序集。BadImageFormatException:无法加载文件或程序集“netstandard”或其依赖项之一”

问题描述 投票:0回答:1

我在 Visual Studio 2019 ASP.NET Web 应用程序项目中收到以下错误。 “无法加载要执行的参考程序集。BadImageFormatException:无法加载文件或程序集“netstandard”或其依赖项之一”。 在我通过在引用名称上单击鼠标右键并选择“删除”从项目引用中删除 netstandard.dll 作为引用之一后,出现此错误。 看起来即使我以我所做的方式删除了引用,Visual Studio 仍然认为它应该是我的项目的引用,并在我尝试调试我的项目时尝试加载它。我什至使用 NuGet 包管理器卸载了 netstandard,但错误仍然存在。 在这一切开始之前,我的系统上没有安装 netstandard。但是我刚刚开始编写代码的一个开源库,即 ClosedXML,一直要求我使用它并给我一个错误。所以我使用 NuGet 包管理器安装了 netstandard。接下来,我必须手动浏览(使用引用管理器)到系统上 netstandard.dll 的位置,将其添加为引用。通过右键单击项目引用来调用引用管理器,但未找到它。 当我最终能够添加 netstandard 作为参考后,我的项目在构建它时开始出现大量构建错误,确切地说是 14932,这是我之前没有遇到过的。例如,其中一个错误表示“'System.Object'未定义或导入”。这就是为什么我决定通过删除 netstandard 作为参考来摆脱它。但现在,即使删除 netstandard 作为参考也会给我一个错误。我以前从未遇到过这样的错误。一切正常。我很遗憾陷入netstandard。还有一个细节,以防万一,为了获得 netstandard 作为参考,我还安装了 Microsoft.Windows.Compatibility。我不知道它是否有任何积极作用。另一个细节,如果相关的话,我的项目的目标 .NET Framework 是 4.7.2

asp.net .net reference frameworks .net-standard
1个回答
0
投票

谢谢你顶帆。我通过重命名 bin 和 obj 文件夹来备份它们,以便 Visual Studio 认为它们已被删除。然后我清理并重建。但是当我这样做时,当我尝试连接到 LocalProcessDB.sdf 时,我的代码引发了异常。我在下面展示了两行代码。第二行给出了例外。 builderLocal.DataSource = @"|DataDirectory|\LocalProcessDB.sdf"; localConn = new SqlCeConnection(builderLocal.ConnectionString); 异常情况如下:无法加载与版本 8876 的 ADO.NET 提供程序相对应的 SQL Server Compact 的本机组件。请安装正确版本的 SQL Server Compact。有关更多详细信息,请参阅知识库文章 974247。 所以我查了一下 StackOverflow。这是相关回复的链接。 无法加载与 ADO.NET 提供程序对应的 SQL Server Compact 的本机组件 由此我想到将 amd64 和 x86 文件夹从备份的 bin 文件夹复制到新的 bin 文件夹中。 从我目前所看到的情况来看,一切正在恢复正常。所以再次感谢。如果其他人想发布额外的、更详细的答案,欢迎他们这样做。

© www.soinside.com 2019 - 2024. All rights reserved.