我希望通过直接引用插件项目和实例化插件类来测试一个插件的核心类。当我创建一个测试控制台应用程序项目并向插件项目添加一个项目引用时,我在引用列表中的引用旁边得到了一个警告图标(带有感叹号的黄色三角形)。

当我改为添加对dll(插件的程序集构建输出)的引用时,我没有得到这样的警告。这个警告想告诉我什么?


当前回答

在ASP上遇到了同样的问题。Net Web App和两个需要在Web App中引用的库类项目。我没有提供关于为什么构建失败和引用无效的信息。

解决方案是确保所有项目都有相同的目标框架:

在Visual Studio 2015中右键单击项目>属性>应用程序>目标框架

保存,清洁和重建解决方案。项目引用将不再显示为黄色警告,解决方案将被编译。

我的Web应用程序的目标是。net 4.5,而其他两个依赖库类项目的目标是。net v4.5.2

其他回答

在Visual Studio 2019中,我的一个项目的目标框架是。net core,但它引用了另一个项目的目标框架是。net标准。我把所有的项目都改成了。net标准,图标也消失了。要查看您的项目是什么,右键单击它,然后单击属性,然后查看目标框架。您也可以正常单击项目本身,并查看< PropertyGroup >下的< TargetFramework >标签

这个问题已经问了很长时间了,但如果有人仍然感兴趣的话——我最近遇到了类似的图标。我正在用vs2008编译一个c# .net项目。我发现VS无法为这些引用定位程序集。当我双击VS时,刷新了引用并删除了其中一些图标[编辑:它现在可以定位]。对于其余的引用,我必须编译各自的程序集。

正如问题评论中提到的,项目之间不同的. net框架版本会导致这种情况。检查新项目的属性,以确保没有使用不同的默认版本。

确保每个项目的所有版本都是相同的,单击每个项目并在这里查看版本,项目>属性>应用>目标。net框架 a.进入工具> Nuget包管理器>包管理器控制台类型更新-包-重新安装(如果不工作,请执行2.b) 这很关键,但也是可行的最大可能性。删除< Target >可能有多行< /Target >通常在.csproj的底部。 保存、加载和构建解决方案。

谢谢大家的帮助。以下是我解决这个问题的方法:

右键单击项目> Properties

在应用程序下更改目标框架。在我的例子中,ImageSharp使用的是。net 4.6.1。您可以在packages.config中找到它。

去找你的项目参考资料。你会注意到sixlabour有一个黄色三角形。你必须更新NuGet包。

右键单击引用>管理NuGet包。

更新SixLabors。

你可能有轻微的代码更新(见下文),但这解决了我的问题。

ImageSharp进行转换。Image到ImageSharp.PixelFormats.Rgba32?