ByteDev.Nuget 1.0.0

.NET Standard 2.0
Install-Package ByteDev.Nuget -Version 1.0.0
dotnet add package ByteDev.Nuget --version 1.0.0
<PackageReference Include="ByteDev.Nuget" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ByteDev.Nuget --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ByteDev.Nuget, 1.0.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install ByteDev.Nuget as a Cake Addin
#addin nuget:?package=ByteDev.Nuget&version=1.0.0

// Install ByteDev.Nuget as a Cake Tool
#tool nuget:?package=ByteDev.Nuget&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

ByteDev.Nuget

.NET Standard library that provides some nuget package related functionality against the nuget V3 API.

The library is built on top of the NuGet Client SDK.

Installation

ByteDev.Nuget has been written as a .NET Standard 2.0 library, so you can consume it from a .NET Core or .NET Framework 4.6.1 (or greater) application.

ByteDev.Nuget is hosted as a package on nuget.org. To install from the Package Manager Console in Visual Studio run:

Install-Package ByteDev.Nuget

Further details can be found on the nuget page.

Release Notes

Releases follow semantic versioning.

Full details of the release notes can be viewed on GitHub.

Usage

NugetPackageClient is the main type for performing package operations:

Methods:

  • DownloadToFileAsync
  • DownloadToStreamAsync
  • GetAsync
  • GetDependenciesAsync
  • GetLatestAsync
  • GetVersionsAsync
  • ExistsAsync
  • SearchAsync
// Initialize the client type
INugetPackageClient client = new NugetPackageClient();
// Download a package to a file
string fileName = NugetPackageFileName.Create("Newtonsoft.Json", "12.0.3");
string filePath = Path.Combine("C:\Temp", fileName);

await client.DownloadToFileAsync("Newtonsoft.Json", "12.0.3", filePath);


// Download a package to a stream
using(Stream stream = await client.DownloadToStreamAsync("Newtonsoft.Json", "12.0.3"))
{
    // use stream...
}
// Get all package versions
IEnumerable<IPackageSearchMetadata> packages = await client.GetAsync("Newtonsoft.Json");


// Get single package version
IPackageSearchMetadata package = await client.GetAsync("Newtonsoft.Json", "12.0.3");


// Get a package's dependencies
var nuGetFramework = NuGetFrameworkFactory.CreateFramework("4.5");

var query = new GetPackageDependenciesRequest("Moq", "4.14.5", nuGetFramework)
{
    AddRootPackageToResults = false
};

query.IgnoreAuthors.Add("Microsoft");

IList<IPackageSearchMetadata> packages = await client.GetDependenciesAsync(query);


// Get latest version of a package
IPackageSearchMetadata package = await client.GetLatestAsync("Newtonsoft.Json");


// Get versions
IEnumerable<NuGetVersion> versions = await client.GetVersionsAsync("Newtonsoft.Json");
// Check a package exists
bool exists = await client.ExistsAsync("Newtonsoft.Json");


// Check a package version exists
bool exists = await client.ExistsAsync("Newtonsoft.Json", "12.0.3");
// Search for "json" packages (take first 100 records)
var request = new SearchPackagesRequest("json")
{
    Take = 100
};

IEnumerable<IPackageSearchMetadata> packages = await client.SearchAsync(request);
Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard2.0 netstandard2.1
.NET Framework net461 net462 net463 net47 net471 net472 net48
MonoAndroid monoandroid
MonoMac monomac
MonoTouch monotouch
Tizen tizen40 tizen60
Xamarin.iOS xamarinios
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 260 9/22/2020