我在Visual Studio中添加了一个NuGet“包源”,因为我们有一个内部服务器在工作。
Visual Studio现在总是默认到我的内部服务器,并且在我将包源切换到All
或nuget.org
之前,无法找到我们的大多数NuGet包。
这是一个小小的不便,但在过去的几周里,每当我需要使用NuGet包管理器时,我都会执行更多的点击操作。有没有人能告诉我如何使用默认的All
而不是总是默认的Internal nuget
发布于 2017-12-06 13:56:39
谁能告诉我如何将其默认为All,而不是总是默认为Internal nuget?
据我所知,NuGet包管理器的默认包源取决于包源的顺序和nuget.config
中activePackageSource
的属性。
包源顺序:
当您打开NuGet包管理器设置,工具->选项->NuGet打包管理器->包源,您会注意到包源有上下箭头:
NuGet包管理器将在包源列表的顶部为默认NuGet包源提供优先级。例如,如果我将NuGet包源LocalServer
设置在该列表的顶部,则在创建新项目时,缺省的NuGet源将更改为LocalServer
然而,,默认NuGet源的优先级很容易被nuget.config中的activePackageSource属性破坏。
从%appdata%\NuGet\NuGet.config打开nuget.config文件,添加以下代码:
<activePackageSource>
<add key="LocalServer2" value="D:\LocalServerTest" />
</activePackageSource>
重新启动Visual Studio,然后创建一个新项目,您将发现默认的NuGet源代码更改为LocalServer2
所以,如果你想默认nuget.org
而不是总是默认为Internal nuget
,你可以在NuGet源列表的顶部设置NuGet源nuget.org
,或者在nuget.config中将nuget.org
设置为activePackageSource
:
<activePackageSource>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</activePackageSource>
更新评论:
有没有办法缺省到所有?也许你可以建议默认所有人(看起来你是为MS工作的)
如果要将默认NuGet源设置为All
,可以在nuget.config
中使用以下设置
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
https://stackoverflow.com/questions/47663822
复制相似问题