【问题标题】:Defaulting Package Management to PackageReference将包管理默认为 PackageReference
【发布时间】:2026-02-24 09:15:02
【问题描述】:

Nuget.Config 中是否有任何方法可以将包管理选项默认为“PackageReference”?我会假设没有,因为我没有看到它 here 但我想我会问。

我希望在所有开发人员机器上为某个存储库默认此设置,我希望我可以在存储在源代码控制中的 Nuget.Config 文件中更改此设置。

这就是我要说的:

【问题讨论】:

    标签: nuget nuget-package-restore


    【解决方案1】:

    在 Visual Studio 2017 中,您可以在 NuGet.Config 文件中定义设置。

    <configuration>
      <packageManagement>
        <add key="format" value="1" />
        <add key="disabled" value="False" />
      </packageManagement>
    </configuration>
    

    格式值可以是 1 或 0。PackageReference = 1。Packages.config = 0。

    禁用标志有点令人困惑,至少对我来说是这样。将其设置为 False 似乎禁用了要求您选择在第一次安装包时使用哪种格式的对话框提示。查看此禁用设置引用 DoNotShowPackageManagementSelectionKey 的代码,然后在 PackageManagementFormat.Enabled 属性中返回禁用值。这对我来说似乎是错误的方式。我正在尝试将 disabled 设置为 True 并想知道为什么显示对话框。

    如果您在目录中拥有与解决方案相同级别或更高级别的 NuGet.Config 文件,则应将其拾取并使用。

    【讨论】: