2016-06-14 98 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