无法在Visual Studio 2015中添加项目引用

21

我之前问过一个类似的问题,关于 Visual Studio 2013,但现在我在使用 Visual Studio 2015 时遇到了相同的问题。不过看起来它的工作方式有所不同,这使得之前的答案对这个问题不适用。这是我的先前的问题:Visual Studio 2013 - 如何调试解决方案中的项目

我正在尝试添加项目引用。我有一个库在另一个解决方案/项目中进行开发,并且我想使用控制台应用程序来测试和调试该库。

我尝试了:添加引用 > 项目 > 解决方案 > 浏览

但打开的文件对话框在筛选列表中不包含 .sln 文件,如果我强制显示它们,通过键入 *.sln 然后选择解决方案,我会收到以下提示:

“请确保文件可访问并且是有效的程序集或 COM 组件。”

我做错了什么?如何正确地添加解决方案/项目引用?

输入图片说明

8个回答

29

对我而言,问题是由于目标框架的差异引起的。一个是.NET Framework 4.5,另一个是.NET Framework 4.5.2。

请验证您的项目和您尝试添加引用的项目引用的目标框架是否相同。

(右键单击项目->属性->应用程序选项卡(目标框架))


2
谢谢。这正是我的问题所在。虽然该项目是解决方案的一部分,但我无法将其添加为另一个项目的引用。更改目标框架解决了这个问题。 - S Raghav
1
当我不知道该去哪里查找时,这很难进行故障排除,但这解决了我的问题。之前我的引用旁边有小黄三角,但它们毫无用处。 - spacebread
我知道这是一篇旧帖子,但它今天帮了我很大的忙!谢谢。 - Scope Creep
在我的情况下,目标框架仍然是相同的4.5.2,但仍然存在问题。 - Heemanshu Bhalla
@HeemanshuBhalla 尝试使用相同的目标框架重新设置项目,而不是从属性更改它。这在我这里有效。 - Sahil batra

13

在解决方案资源管理器窗口中右击您的解决方案文件,单击添加,然后选择现有项目...

输入图像描述

一旦该项目成为解决方案的一部分,您就可以添加项目引用。


1
我的项目是解决方案的一部分,当我尝试引用时可以看到它,但我只是被告知无法完成。它位于类库和控制台应用程序之间。 - MartinJH
1
@MartinJH 我建议你提出一个新问题,而不是对这里的所有答案进行投票。 - Daniel A. White
@DanielA.White 是的,你说得对。我的挫败感让我失去理智,并将其发泄在这些答案上,因为它们没有帮助到我。不幸的是,它们被锁定了,直到有人编辑它们。如果发生这种情况,我会撤回负评。 - MartinJH
请问您能具体说明您的错误吗?无论如何,最好在其他帖子中寻找更具体的问题或提出新问题。 - Pylyp Lebediev

9
如果有其他人遇到这个问题,这里有一些我找到的东西。我在VS 2015中几乎遇到了完全相同的问题。我创建了一个控制台应用程序和一个类库项目,但无法向类库添加引用。
结果发现我没有像想象的那样创建一个类库项目,而是一个类库(包)项目。这些是不同的东西,当我选择它时,我不知道(package)的含义。显然这是为了创建Nuget程序包。
我不确定这是否是VS 2015中的新功能,但我以前从未遇到过这种情况,这给我带来了一些困扰。错误信息(“无法添加对ClassLibrary1的引用”)在调试过程中完全毫无用处。

我完全错过了这个新项目类型。 - Jasen
1
除了重新创建项目,有没有简单的方法可以进行转换? - ruffin
@ruffin,我不这么认为。我没有看到任何办法,所以我不得不删除原来的项目并创建一个新项目。 - melston

2
您需要先将项目添加到解决方案中,然后才能引用它。
要将现有项目添加到解决方案中:
从“文件 > 添加 > 现有项目”菜单中添加。
添加引用菜单:
从“解决方案资源管理器”中展开项目,右键单击“引用”文件夹,然后选择“添加引用...”。
添加引用对话框:
从左侧菜单中展开“项目”,然后选择“项目”。

引用 > 添加引用 > 项目。请勿“浏览”!谢谢。 - Protector one

1
为了添加项目引用,该项目必须作为解决方案的一部分。

1
对我来说,问题是由于项目类型的差异引起的。其中一个是C# Windows表单项目,另一个项目是C#通用Windows项目。
Windows Forms项目无法引用通用Windows项目。错误为“无法向项目“XYZ”添加引用”。
看起来可以通过遵循这个答案,在两种类型的项目之间共享库:什么样的类库适用于通用和Winform项目?

0
我最终找到了另一种解决方案。我的解决方案中有三个项目引用了一个已经不再可用的NuGet包。虽然我本地有这个库,但我无法添加它。后来我发现,由于我的项目的构建顺序和依赖关系,我必须先将它添加到第一个被构建的项目中,然后才能将其添加到依赖于该项目的其他项目中。

0
今天我遇到了这个问题,于是我查看了解决方案的配置管理器。发现两个项目的平台设置不同,我将它们都设置为 Any CPU 并重新构建了一下。然后我就可以引用这个项目了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接