NET 核心 - 无法加载文件或程序集“System.Runtime,版本=6.0.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a”,.NET 6

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

我已将 .NET Framework 3.5 TestAPP 转换为 .NET 6 TestAPP 并且运行良好。 我有一个自动化项目(C++ 项目),它使用 .NET Framework 3.5 TestAPP.dll 来运行测试,但现在我已经替换了 .NET Framework 3.5 .dll 与 .NET 6 TestAPP 即 TestAPP.dll 当我在命令行中运行 exe 时,出现错误如下

“未处理的异常:System.IO.FileLoadException:无法加载文件 或程序集'System.Runtime,版本= 6.0.0.0,文化=中性, PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。这 找到的程序集的清单定义与程序集不匹配 参考。 (HRESULT 异常:0x80131040)”

如果有任何需要纠正的地方,请告诉我。

c# .net .net-core console-application .net-6.0
5个回答
7
投票

通过更改 Visual Studio 项目属性中的 C++/CLI 属性解决了错误,该属性之前引用了 .NET Framework,我已将该属性更改为 .NET core 运行时(clr:netcore),并且它在内部处理所有 GAC 更改和效果很好。 希望它可以帮助某人。


3
投票

将应用程序升级到更高版本的 .NET 时,编辑您的 csproj 文件并确保其中不存在有人可能手动插入的

<RuntimeFrameworkVersion>
节点。 切换 .NET 版本时不会自动更新


0
投票

运行的项目返回此错误。当我改成图中的方式后,错误就解决了。

Project>属性


0
投票

在我的例子中,错误是由于包管理器控制台中的默认项目磨损造成的,如果您正在运行 EF 迁移或项目中需要从 API 获取信息的项目,请确保您瞄准的是正确的项目,也请尝试清理+ 首先构建。


0
投票

我的解决方案是删除所有包依赖项,然后使用 Nuget 包管理器再次添加它们。直到那时,项目才重新开始工作。

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