我在Visual Studio中添加了一个NuGet“包源”,因为我们有一个内部服务器在工作。
Visual Studio现在总是默认为我的内部服务器,并且无法找到我们的大多数NuGet包,直到我将包源切换到All
或nuget.org
。
这是一个小小的不便,但在过去的几周里,每当我需要使用NuGet包管理器时,我都会进行更多的点击。谁能告诉我如何默认为All
而不是总是默认为Internal nuget
?
我在Visual Studio中添加了一个NuGet“包源”,因为我们有一个内部服务器在工作。
Visual Studio现在总是默认为我的内部服务器,并且无法找到我们的大多数NuGet包,直到我将包源切换到All
或nuget.org
。
这是一个小小的不便,但在过去的几周里,每当我需要使用NuGet包管理器时,我都会进行更多的点击。谁能告诉我如何默认为All
而不是总是默认为Internal nuget
?
1条答案
按热度按时间gev0vcfq1#
谁能告诉我如何默认为All而不是总是默认为Internal nuget?
据我所知,NuGet Package Manager的默认包源取决于包源的顺序和
nuget.config
中activePackageSource
的属性。包源顺序:
当你打开NuGet Package Manager设置,工具->选项->NuGet Packager Manager->包源,你会注意到包源有上下箭头:
NuGet软件包管理器将给予默认NuGet软件包源在软件包源列表顶部的优先级。例如,如果我在列表顶部设置NuGet包源
LocalServer
,当我创建一个新项目时,默认的NuGet源将更改为LocalServer
:但是,默认NuGet源的优先级很容易被nuget.config中的activePackageSource属性破坏。
从%appdata%\NuGet\NuGet.config打开nuget. config文件,添加以下代码:
重新启动Visual Studio,然后新建一个项目,你会发现默认的NuGet源代码更改为
LocalServer2
:所以,如果你想默认
nuget.org
,而不是总是默认为Internal nuget
,你可以在NuGet源列表的顶部设置NuGet源nuget.org
,或者在nuget.config中将nuget.org
设置为activePackageSource
:更新评论:
没有办法默认为All吗?也许你可以建议默认为All(看起来你为MS工作)
如果你想将默认的NuGet源设置为
All
,你可以在nuget.config
中使用下面的设置:不幸的是,根据文档,这只适用于NuGet 2.X,而不适用于3.X+。