我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
当前回答
得到这个讨厌的黄色三角形的原因之一是你添加了一个引用到一个项目两次,这意味着:
参考一:MyProjectOne(它已经包含了对MyProjectTwo的参考) 参考资料二:MyProjectTwo
通过删除Reference 2,黄色三角形将消失。
其他回答
找到.csprojc文件并打开它。
找到您的包路径。我通过这个问题修正了我的项目。
..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll
这个. .意味着vs将在父目录中找到这个DLL。
您应该确认您的包路径,并且您将修复此问题。
我有这些图标是出于不同的原因。对于我们所有的项目(近100个),我们都有一个大的解决方案。我对我感兴趣的项目进行了子选择,并制定了新的解决方案。然而,引用的项目引用而不是引用编译dll的....
经过一些研究,我在GitHub上找到了这个链接,解释了这是VS2015中的新行为。
在GitHub页面上,他们解释了一个将项目引用转换为二进制引用的变通方法。
在Visual Studio 2019中,我的一个项目的目标框架是。net core,但它引用了另一个项目的目标框架是。net标准。我把所有的项目都改成了。net标准,图标也消失了。要查看您的项目是什么,右键单击它,然后单击属性,然后查看目标框架。您也可以正常单击项目本身,并查看< PropertyGroup >下的< TargetFramework >标签
确保项目的目标是相同的框架版本。大多数情况下,原因可能是当前项目(其中您正在添加另一个项目的引用)指向的。net框架版本与其他版本不同。
我也遇到了同样的问题,但我的情况与上面的情况有点不同。我试图打开在另一台计算机上创建的项目。我发现当你添加引用时,包文件夹的路径没有更新,所以重新启动VS,改变. net版本,或任何提到的建议都不能解决问题。我在notepad++中打开了csproj文件,并更正了packages文件夹的所有相对路径。然后;所有的警告都消失了。希望能有所帮助。