我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
当前回答
得到这个讨厌的黄色三角形的原因之一是你添加了一个引用到一个项目两次,这意味着:
参考一:MyProjectOne(它已经包含了对MyProjectTwo的参考) 参考资料二:MyProjectTwo
通过删除Reference 2,黄色三角形将消失。
其他回答
如果你使用的是新风格的Sdk项目,将OutputType添加到ProjectGroup元素中,在你引用的项目中,它的值为Library。 如果它在你引用的项目中,并且它引用了一个没有设置的项目,它也会给你带来麻烦。
正如问题评论中提到的,项目之间不同的. net框架版本会导致这种情况。检查新项目的属性,以确保没有使用不同的默认版本。
我也遇到了同样的问题,但我的情况与上面的情况有点不同。我试图打开在另一台计算机上创建的项目。我发现当你添加引用时,包文件夹的路径没有更新,所以重新启动VS,改变. net版本,或任何提到的建议都不能解决问题。我在notepad++中打开了csproj文件,并更正了packages文件夹的所有相对路径。然后;所有的警告都消失了。希望能有所帮助。
如果显式引用已经隐式引用的项目,也会发生这种情况。
i.e
项目a引用项目b 项目c引用项目a(添加隐式引用。展开查看) 项目c引用项目b
您将在项目引用下的b旁边看到一个感叹号。
得到这个讨厌的黄色三角形的原因之一是你添加了一个引用到一个项目两次,这意味着:
参考一:MyProjectOne(它已经包含了对MyProjectTwo的参考) 参考资料二:MyProjectTwo
通过删除Reference 2,黄色三角形将消失。