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

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


当前回答

我在一个针对。net Core 3.1、。net Standard 2.0和。net Framework 4.8的项目中遇到了同样的问题。问题是最后一个。

为我解决这个问题的技巧是将目标框架改为。net framework 4.5,然后再改为。net framework 4.8。

我完全不知道为什么这解决了问题,但它确实解决了问题。

IDE是Visual Studio 2019。

其他回答

如果显式引用已经隐式引用的项目,也会发生这种情况。

i.e

项目a引用项目b 项目c引用项目a(添加隐式引用。展开查看) 项目c引用项目b

您将在项目引用下的b旁边看到一个感叹号。

对于您想一起使用的两个(或所有)项目:

右键单击项目>属性>应用>目标。net框架

确保两个(或所有)项目都使用相同的. net框架版本。

在Asp.net核心中,如果您更改了项目名称空间或名称,有时会显示警报。要删除这种类型的警报,您只需卸载项目,并再次加载它。 如果问题仍然存在,意味着您无法找到您的程序集参考。

我在一个针对。net Core 3.1、。net Standard 2.0和。net Framework 4.8的项目中遇到了同样的问题。问题是最后一个。

为我解决这个问题的技巧是将目标框架改为。net framework 4.5,然后再改为。net framework 4.8。

我完全不知道为什么这解决了问题,但它确实解决了问题。

IDE是Visual Studio 2019。

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

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

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

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

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