Visual studio 添加现有项目作为包的引用,引用失败

Visual studio 添加现有项目作为包的引用,引用失败,visual-studio,nuget,nuget-package,Visual Studio,Nuget,Nuget Package,我有一个现有的项目,它使用了几个通过VisualStudioNuget接口包含的外部包。让我们将此项目称为现有项目 在一个单独的项目中,我想添加该项目作为参考。让我们将此项目称为独立项目 我转到Separate,在解决方案资源管理器中右键单击解决方案,然后单击“添加->现有项目”。这将成功地将现有的添加到单独的。然后右键单击现有并单击构建。这将导致NuGet获取所有包 但是,在这之后,所有引用都会在现有的中被打断。。。它们上面都有一个黄色的三角形。如果我查看文件系统,它们已成功下载到Separa

我有一个现有的项目,它使用了几个通过VisualStudioNuget接口包含的外部包。让我们将此项目称为现有项目

在一个单独的项目中,我想添加该项目作为参考。让我们将此项目称为独立项目

我转到
Separate
,在解决方案资源管理器中右键单击解决方案,然后单击“添加->现有项目”。这将成功地将
现有的
添加到
单独的
。然后右键单击
现有
并单击构建。这将导致NuGet获取所有包

但是,在这之后,所有引用都会在现有的
中被打断。。。它们上面都有一个黄色的三角形。如果我查看文件系统,它们已成功下载到
Separate\packages


为什么Visual Studio找不到引用?它安装了它们。

现有项目以前是否采用不同的解决方案?因此packages目录不同,因此指向引用的提示路径不再正确?正确,existing是另一个解决方案的一部分。那么,你建议我怎么做?因为一旦我将它添加到新项目中,它不应该获得一个新的包目录吗?不。NuGet不是这样工作的。HintPath是在引用NuGet包程序集时创建的。如果要在两个解决方案之间共享项目,可能需要创建一个NuGet.Config文件并设置repositoryPath。或者,如果不是这样,那么您可以重新安装NuGet软件包。您应该能够使用Update Package-REPLACEN命令从软件包管理器控制台执行此操作。只要确保所有的东西都在版本控制下,以防事情不像你期望的那样工作。我也有这个问题。我想知道是否有办法将SolutionDir指定为HintPath中的变量。我觉得这应该是自动处理的。