我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
当前回答
如果显式引用已经隐式引用的项目,也会发生这种情况。
i.e
项目a引用项目b 项目c引用项目a(添加隐式引用。展开查看) 项目c引用项目b
您将在项目引用下的b旁边看到一个感叹号。
其他回答
找到.csprojc文件并打开它。
找到您的包路径。我通过这个问题修正了我的项目。
..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll
这个. .意味着vs将在父目录中找到这个DLL。
您应该确认您的包路径,并且您将修复此问题。
正如问题评论中提到的,项目之间不同的. net框架版本会导致这种情况。检查新项目的属性,以确保没有使用不同的默认版本。
在所有针对.Net Core 3.1的项目中使用Visual Studio 2019,解决方案是:
清洁/建造/重建。 重启Visual Studio 2019
对于您想一起使用的两个(或所有)项目:
右键单击项目>属性>应用>目标。net框架
确保两个(或所有)项目都使用相同的. net框架版本。
在一个多项目的解决方案中,如果其他事情都失败了……在startUp项目中,检查。 依赖项->程序集,并查看错误的引用项目是否在那里。移除它,重新构建。