我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。
当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?
当前回答
要修复一些不工作的东西,它有意义,删除一些库有时,怎么听起来不奇怪。
无论如何,我认为这个问题太广泛了,可能是由不同的因素引起的,所以想分享我的情况/解决方案。
我有一个项目(由客户带来)使用Xamarin Forms和Telerik库。这件事通常与组件有关,这些库不包含在packages文件夹中,也不能通过Nuget(付费的)获得。
整个项目的参考资料都是“黄色”的,看起来可怕而可怕。
解决方案就是删除那些Telerik引用(包括代码中使用它的一些控件)。在那之后,所有的引用都神奇地变成了它们共同的正常灰色,错误(大部分)消失了。
“大部分”-因为“周围都是红色”错误消息“元素在任何地方都没有定义”有时仍然会发生。这很奇怪,也带来了不便,但我仍然能够编译和运行项目:只需要清理解决方案,重新启动Visual Studio,祈祷一下,再次清理,删除obj/bin文件夹,重新启动,它工作得很好。
关键是删除不可用的库引用,因为错误消息绝对是另一回事。(例如,像“Xamarin.Build.Download”这样的内容。XamarinDownloadArchives not found或不能找到一些东西”等等,但这可能只是意味着您没有一些可用的引用。
然后删除包文件夹,重新加载/重新打开项目/解决方案,进入“管理Nuget包”,单击“恢复”按钮。
其他回答
这个问题已经问了很长时间了,但如果有人仍然感兴趣的话——我最近遇到了类似的图标。我正在用vs2008编译一个c# .net项目。我发现VS无法为这些引用定位程序集。当我双击VS时,刷新了引用并删除了其中一些图标[编辑:它现在可以定位]。对于其余的引用,我必须编译各自的程序集。
确保每个项目的所有版本都是相同的,单击每个项目并在这里查看版本,项目>属性>应用>目标。net框架 a.进入工具> Nuget包管理器>包管理器控制台类型更新-包-重新安装(如果不工作,请执行2.b) 这很关键,但也是可行的最大可能性。删除< Target >可能有多行< /Target >通常在.csproj的底部。 保存、加载和构建解决方案。
我在一个针对。net Core 3.1、。net Standard 2.0和。net Framework 4.8的项目中遇到了同样的问题。问题是最后一个。
为我解决这个问题的技巧是将目标框架改为。net framework 4.5,然后再改为。net framework 4.8。
我完全不知道为什么这解决了问题,但它确实解决了问题。
IDE是Visual Studio 2019。
如果你使用的是新风格的Sdk项目,将OutputType添加到ProjectGroup元素中,在你引用的项目中,它的值为Library。 如果它在你引用的项目中,并且它引用了一个没有设置的项目,它也会给你带来麻烦。
一个更简单的答案:退出visual studio并重新打开它,它已经解决了我的问题。