2016-06-14 52 views
1

场景:我有14个项目(每个都在TFS自己的文件夹中)和一个名为AllSolutions的附加文件夹包含所有这些文件夹。请注意,并非团队中的每个人都需要全部14个项目,这就是为什么我将AllSolution.sln放入其自己的文件夹中的原因。我的所有参考文献发生了什么?

Allsolutions.sln刚刚升级到Nuget 2.0,它编译得很好!到现在为止还挺好。

Structure

我也有子解决方案(仅包含那些他们需要的项目)。这些解决方案都包含在下面示出作为...框架的根文件夹...

enter image description here

问题

不限子解决方案予加载显示此(无论它们是否具有一个或更多的项目)都显示缺少组件:

Missing Assemblies

我怀疑我的AllSolutions.sln狼吞虎咽起来。也许我需要将所有这些解决方案移到AllSolutions文件夹中?顺便说一句,当我打开这些子解决方案时,输出窗口中没有任何东西出现。

如果我打开/编辑任何Proj文件,这就是我所看到的。

Project File

注意,工作的NuGet投入提示路径后AllSolutions文件夹..我一定要放在提示路径,所有这些,为什么?

回答

1

在NuGet 2.0或packages.config世界中,每个解决方案都有一个包文件夹。你看到的问题是由于这个。 NuGet 2.0在程序包安装期间在指向该位置的项目文件中插入提示路径。您需要解析相关位置才能使用。您也可以选择使用repository path property in NuGet.config为包文件夹提供公共位置。这应该可以解决你的问题。

而不是升级到NuGet 2.0,如果您使用Visual Studio 2015及以上,我建议您考虑移动到project.json。在porject.json世界中,您可以拥有一个全局包文件夹,并且在安装包时不会修改您的项目文件。欲了解更多信息,请查看wiki条目here