.net core 如何以编程方式从.NET核心.NET标准项目下载NuGet软件包

.net core 如何以编程方式从.NET核心.NET标准项目下载NuGet软件包,.net-core,nuget,nuget-package,.net-standard,.net Core,Nuget,Nuget Package,.net Standard,我想从.NET core/.NET标准项目以编程方式下载Nuget包 我们有一些控制台应用程序是NuGet软件包的工具,我想下载它们并作为后台进程启动它们。实现它的最佳方法是在Project中引用NugetDownloaderNuGet软件包,并使用它以编程方式下载任何软件包(在dotnet core中也是如此) 源代码和帮助指南位于: 下面是一个关于如何实现它的快速示例: string packageName=“Newtonsoft.json”; 字符串版本=“10.2.1.0”\\可选择

我想从.NET core/.NET标准项目以编程方式下载Nuget包


我们有一些控制台应用程序是NuGet软件包的工具,我想下载它们并作为后台进程启动它们。

实现它的最佳方法是在Project中引用NugetDownloaderNuGet软件包,并使用它以编程方式下载任何软件包(在dotnet core中也是如此)

源代码和帮助指南位于:

下面是一个关于如何实现它的快速示例:

string packageName=“Newtonsoft.json”;
字符串版本=“10.2.1.0”\\可选择的
\\从NugetDownloader命名空间初始化NugetEngine
NugetEngine NugetEngine=新的NugetEngine();
GetPackage(packageName,version).Wait();
示例客户端也可在


或者,如果您想从头开始构建Nugetdownloader引擎,那么您也可以参考,因为它有类似的实现,但这需要太多的代码理解和提取。

实现它的最佳方法是在项目中引用NugetDownloaderNuget包,并使用它以编程方式下载任何包(在dotnet core中也是如此)

源代码和帮助指南位于:

下面是一个关于如何实现它的快速示例:

string packageName=“Newtonsoft.json”;
字符串版本=“10.2.1.0”\\可选择的
\\从NugetDownloader命名空间初始化NugetEngine
NugetEngine NugetEngine=新的NugetEngine();
GetPackage(packageName,version).Wait();
示例客户端也可在


或者,如果您想从头开始构建Nugetdownloader引擎,那么您也可以参考它,因为它有类似的实现,但代码理解和提取太多。

NuGet是开源的,所以您可以直接使用它的API,也可以将您的工具实现为dotnet全局工具,然后使用
dotnet tool install
来安装它们,这样您就不必自己去弄清楚nuget API了。@zivkan,感谢donet全局工具只用于.NET core,我可以将它们同时用于.NET core和.NET Full吗?我认为您不能进行多目标设置,dotnet cli如何知道在您的路径上放置哪一个?但是您当然可以尝试针对.net框架。我不知道是否有任何东西真正验证/强制它成为netcoreapp.NuGet是开源的,所以你可以直接使用它的API。你也可以将你的工具实现为dotnet全局工具,然后使用
dotnet tool install
来安装它们,这样你就不必自己弄清楚NuGet API了。@zivkan,感谢donet global tools仅适用于.NET core,我可以将它们同时用于.NET core和.NET Full吗?我不认为您可以用于多目标,dotnet cli如何知道在您的路径上放置哪一个?但是您当然可以尝试针对.net框架。我不知道是否有任何东西真正验证/强制它成为netcoreapp。
Install-Package NugetDownloader