Как загрузить пакеты NuGet программно из проектов .NET Core, .NET Standard - PullRequest
1 голос
/ 11 апреля 2019

Я хочу загружать пакеты Nuget программно из проектов .NET core / .NET Standard

У нас есть некоторые консольные приложения, которые являются инструментами пакетов NuGet, и я хочу загрузить их и запустить как фоновый процесс.

1 Ответ

0 голосов
/ 30 мая 2019

Лучший способ добиться этого - обратиться к NugetDownloader Пакет Nuget в Project и использовать его для загрузки любого пакета программным способом (в том числе и в ядре dotnet)

Install-Package NugetDownloader 

NuGet Badge

Исходный код и справочное руководство по этому же доступно по адресу: https://github.com/paraspatidar/NugetDownloader

Вот краткий пример того, как этого добиться:

string packageName="Newtonsoft.json";
string version="10.2.1.0"; \\optional

\\initilize NugetEngine from NugetDownloader namespaces

NugetEngine nugetEngine = new NugetEngine();
nugetEngine.GetPackage(packageName, version).Wait();

образец клиента также доступен на https://github.com/paraspatidar/NugetDownloader/tree/master/NugetDownloaderTestConsole

С другой стороны В случае, если вы хотите собрать движок Nugetdownloader с нуля, вы также можете ссылаться на https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script/Description/DotNet/PackageManager.cs, поскольку он имеет нечто похожее, но это слишком много для понимания и извлечения кода.

...