C# Visual Studio 2019错误-无法加载文件或程序集或其依赖项之一

C# Visual Studio 2019错误-无法加载文件或程序集或其依赖项之一,c#,.net,web-applications,visual-studio-2019,C#,.net,Web Applications,Visual Studio 2019,我在运行我的项目时遇到了一些问题。尝试运行时,出现以下错误: FileNotFoundException:无法加载文件或程序集的Dapper, Version=2.0.0.0,Culture=neutral,PublicKeyToken=null'或其 依赖关系。系统找不到指定的文件 背景: 我有一个类库X和一个Web应用程序Y,它们依赖于X。当我试图运行API项目时,它抛出上述错误。 但是,当我的同事尝试运行相同的API项目时,它工作正常(没有错误,并且在/bin文件夹中,它加载所有的.dll

我在运行我的项目时遇到了一些问题。尝试运行时,出现以下错误:

FileNotFoundException:无法加载文件或程序集的Dapper, Version=2.0.0.0,Culture=neutral,PublicKeyToken=null'或其 依赖关系。系统找不到指定的文件

背景:

我有一个类库X和一个Web应用程序Y,它们依赖于X。当我试图运行API项目时,它抛出上述错误。 但是,当我的同事尝试运行相同的API项目时,它工作正常(没有错误,并且在/bin文件夹中,它加载所有的.dll库..)

我采取了以下方法:

  • 重新启动Visual Studio,清理并生成解决方案
  • 删除类库引用并再次添加
  • 工具>导入和导出设置向导>重置所有设置(可能某些设置未正确配置)。我还尝试导入同事设置,但也没有成功
我尝试了各种方法(即使是在不同的机器上,但VS设置相同),但这些都不适合我


Visual studio 2019 16.4 Enterprise。

从某人或其他系统复制项目时,需要下载并安装所有组件。通常情况下,当您加载从git新导入的解决方案时,VS会为您提供“恢复包”选项,但当您从其他系统打开现有解决方案时,不确定该选项是否会提供

右键单击项目,管理Nuget软件包
浏览->搜索衣冠楚楚。安装

在您收到的错误中,它会告诉您应该安装哪个版本的软件包。安装明显不同的版本可能会导致其他意外错误。

我也会尝试:

1) 在重建之前删除解决方案中的bin和obj文件夹

2) 检查解决方案中是否没有相同软件包的多个版本(右键单击解决方案资源管理器中的解决方案->管理解决方案的nuget软件包)

3) 检查引用的属性(在解决方案资源管理器中右键单击有问题的引用)是否显示了相对于解决方案的预期包路径(例如不在mydocuments/nuget包或其他文件中!)

4) 尝试重新复制回购协议(这实际上应该复制您同事的设置),然后看看问题是否仍然存在


我想另一个原因可能是您的同事有一个本地安装的软件包/dll,他们很高兴地引用它,但没有意识到,而您没有?

谢谢您的解决方案,但我发现了问题:

该项目解决方案有一些采用.net标准2.0的项目和一些采用.net framework 4.8的项目。不知何故,当我运行应用程序时,一些软件包没有正确加载,它会抛出一个错误

下面这句话解决了我的问题:

<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
PackageReference
将它放在所有.NETFramework4.8项目的第一个XML标记上

谢谢大家


尊敬。

您需要为Dapper安装nuget软件包。问题不在于还原软件包(我也尝试了还原软件包)。整洁只是一个例子。在这种情况下,Dapper安装在类库X上,但在生成解决方案时,/bin文件夹中没有Dapper.dll或对此包的任何引用。请删除引用。。。卸载并重新安装程序包在哪里添加了RestoreProjectStyle标记?