是否有csproj属性为Visual Studio禁用了自动NuGet恢复?

时间:2019-03-29 18:51:51

标签: visual-studio msbuild csproj csproj-property

是否有一个csproj属性会禁用Visual Studio的自动NuGet恢复?

我正在寻找特定于视觉工作室的属性,类似于特定于视觉工作室的项目<UpToDateCheckInput>

<PropertyGroup>
    <VisualStudioSpecificDisableAutomaticNuGetRestore>true</VisualStudioSpecificDisableAutomaticNuGetRestore>
</PropertyGroup>

1 个答案:

答案 0 :(得分:1)

  

是否有一个csproj属性可以禁用自动NuGet恢复   用于Visual Studio?

恐怕答案是否定的。

1。似乎您是在VS IDE中构建项目的。对于nuget restore选项,它由IDE级别而不是.xxproj文件级别控制。

Go Tools=>Options=>Nuget Package Manager=>Package Restore,您会发现以下两个选项:

enter image description here

取消选中它们,我们可以在构建/重建期间禁用自动NuGet还原,但是我们必须知道,这是一个IDE选项,不仅适用于当前项目。如果我们创建一个新的解决方案,那么对于新的sln也将禁用此选项。

2。此外,我了解您为什么要在.csproj中使用此类属性。通常,Project=>Properties中的某些设置对应于.csproj中的属性(例如构建事件,输出路径,目标框架等)。这些选项用于特定项目,因此我们可以在.csproj中具有相应的属性。但是nuget restore是针对整个IDE的,这意味着.csproj中没有相应的属性。

3。此外,相应的属性在nuget.config文件中(不在.xxproj中)。但是它似乎适用于VS中的整个解决方案(不适用于每个单独的项目)。就像Tools=>...Package Restore的用法一样。您可能会从此issue获得一些帮助。

最后,您可以考虑使用msbuild command-line构建项目,除非告知您这样做,否则它不会自动还原nuget。无论如何,.csproj中没有默认属性可禁用nuget恢复。

希望有帮助。