ByteDev.Nuget 1.0.0

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

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.

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);

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);

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.0 97 9/22/2020