我在VSTS(Visual Studio Team Services)中的Feed中存储了一个私有包。我想将它添加到我正在Visual Studio Code中开发的.NET Core项目中。
检查VSTS文档,要从私有源添加包,必须使用NuGet CLI,因为.NET不支持私有存储库(或者至少我认为,因为Microsoft建议我们使用NuGet CLI)
使用NuGet CLI,添加包的命令是NuGet install。但它下载所有包,包括.nupck,DLL文件,大型等...(即各种XML文件)。它没有为项目添加必要的引用。使用.NET CLI添加软件包,它会在.csproj文件(项目文件)中添加引用,并且照常工作。
是否有一个命令可以重现完全相同的行为,例如我们在Visual Studio上添加包,或者使用.NET添加包CLI来实现Visual Code? p>
如果没有,我该怎么办?我应该提取DLL文件并在.csproj文件中手动引用它吗?如果有任何更新,我怎么知道它(在Visual Studio中NuGet UI向我显示更新,但在Visual Studio Code中,手动添加引用后...)
答案 0 :(得分:2)
无法通过Visual Studio Code或NuGet CLI 将NuGet包添加到项目中。
对于命令nuget install
(与nuget restore
相同的功能),它只从指定的Feed下载NuGet包,但它不会对项目进行任何更改。您还可以参考帖子 How to install a NuGet package on the command line to a Visual Studio project 。
将NuGet包添加到项目的变通方法如下:
在Visual Studio中添加包
您可以在Visual Studio中打开项目,然后通过Visual Studio添加NuGet包。
手动更改项目文件
如果尚未安装Visual Studio。您也可以手动更改相关文件。
例如将私有Feed添加到nuget.config
文件中,然后使用以下行更改.csproj
文件:
<ItemGroup>
<PackageReference Include="xxx" Version="xxx" />
</ItemGroup>
按dotnet add package
命令
您还可以使用dotnet add package
命令将NuGet包添加到项目中:
dotnet add [<PROJECT>] package <PACKAGE_NAME> [-v|--version]