通常,我们从users\[loggedinuser\AppData\Roaming\Nuget
获取Nuget.config,但我们有一个特定项目,我们需要使用不同的项目特定配置文件。在这种情况下,我在哪里放置配置文件?
我正在使用.net核心SDK 1.0.4和.net代码。
构建脚本执行此操作:
cd src\SFMC.Adapter.Service
dotnet restore
dotnet build
我可以将参数传递给dotnet restore
以指示配置的位置吗?
答案 0 :(得分:5)
假设您的项目结构如下:
Project/
└── src
├── SFMC.Adapter.Client
├── SFMC.Adapter.Service
│ ├── Program.cs
│ └── Project.csproj
└── SFMC.Adapter.Service.Test
您可以在项目树中的任何位置添加Nuget文件。放置它会影响默认情况下哪些项目看到它。 dotnet restore
将搜索目录树中的所有Nuget.config
个文件,以添加找到的所有来源。
如果您将其放在Service.cs
旁边,则只会被SFMC.Adapter.Service
选中。如果您将其放在src
下,SFMC.Adapter.Service
,SFMC.Adapater.Service.Test
和SFMC.Adapter.Client
将会提取并使用它。
有关详细信息,请参阅NuGet configuration docs。
答案 1 :(得分:2)
来自Nuget docs:
项目特定的
NuGet.Config
文件,位于从解决方案文件夹到驱动器根目录的任何文件夹中。这些允许控制设置,因为它们适用于项目或一组项目。
因此,您可以将Nuget配置文件与项目文件放在一起,为该项目提供特定配置。
答案 2 :(得分:2)
我知道这是一个相当老的帖子,但我也在努力解决它并且很难找到正确的文档。我最终发现您可以执行以下命令将新的 nuget 配置添加到您所在的位置。
dotnet new nugetconfig
这将使用 dotnet cli 使用 nugetconfig 模板(似乎是默认安装的)生成正确的文件