我有一个Visual Studio解决方案,其中有两个子项目,这些子项目使用相同的nuget包。我在C ++项目方面有多年的经验,但是对于.net和nuget包,我还是比较陌生。我正在尝试同时实现以下目标。
这是我的项目目录结构
{projects root}
Master.sln
packages.config {is it possible for this file to be at this level}
Proj1
Proj1.sln {do not want solution at this level}
Proj1.csproj
Program.cs
packages.config {do not want at this level}
Proj2
Proj2.sln {do not want solution at this level}
Proj2.csproj
Program.cs
packages.config {do not want at this level}
目前,如果我在Visual Studio中编译Proj1.sln或Proj2.sln文件,则将创建“ packages”文件夹,并且项目可以正确编译。但是,如果我打开Master.sln(包含两个子项目)并进行编译,则将在与Master.sln文件相同的级别上创建“ packages”文件夹,但这些项目不会生成,我假设因为他们找不到包裹。
任何帮助,将不胜感激。
答案 0 :(得分:0)
使用Nuget包进行多项目设置
恐怕您必须在每个子文件夹中复制相同的packages.config文件,因为 NuGet团队已弃用NuGet 3.0中的解决方案级别程序包:
https://github.com/NuGet/Home/issues/522
并且Visual Studio 2017的默认nuget版本为 4.0 及更高版本。
因此,在Master.sln
文件级别上不可能只有一个package.config。