NuGet.Packaging 8.0.0

Nuget.Packaging

NuGet.Packaging is a NuGet client SDK library that provides a set of APIs to interact with .nupkg and .nuspec files from a stream. It provides a way for developers to create and read packages and work with the package metadata.

Usage

It is strongly recommended that NuGet packages are created using the official NuGet tooling and instead of this low-level API. There are a variety of characteristics important for a well-formed package and the latest version of tooling helps incorporate these best practices.

For more information about creating NuGet packages, see the overview of the package creation workflow and the documentation for official pack tooling (for example, using the dotnet CLI).

Examples

Create a package

Create a package, set metadata, and add dependencies.

PackageBuilder builder = new PackageBuilder();
builder.Id = "MyPackage";
builder.Version = new NuGetVersion("1.0.0-beta");
builder.Description = "My package created from the API.";
builder.Authors.Add("Sample author");
builder.DependencyGroups.Add(new PackageDependencyGroup(
    targetFramework: NuGetFramework.Parse("netstandard1.4"),
    packages: new[]
    {
        new PackageDependency("Newtonsoft.Json", VersionRange.Parse("10.0.1"))
    }));

using FileStream outputStream = new FileStream("MyPackage.nupkg", FileMode.Create);
builder.Save(outputStream);
Console.WriteLine($"Saved a package to {outputStream.Name}");

Read a package

Read a package from a file.

using FileStream inputStream = new FileStream("MyPackage.nupkg", FileMode.Open);
using PackageArchiveReader reader = new PackageArchiveReader(inputStream);
NuspecReader nuspec = reader.NuspecReader;
Console.WriteLine($"ID: {nuspec.GetId()}");
Console.WriteLine($"Version: {nuspec.GetVersion()}");
Console.WriteLine($"Description: {nuspec.GetDescription()}");
Console.WriteLine($"Authors: {nuspec.GetAuthors()}");

Console.WriteLine("Dependencies:");
foreach (PackageDependencyGroup dependencyGroup in nuspec.GetDependencyGroups())
{
    Console.WriteLine($" - {dependencyGroup.TargetFramework.GetShortFolderName()}");
    foreach (var dependency in dependencyGroup.Packages)
    {
        Console.WriteLine($"   > {dependency.Id} {dependency.VersionRange}");
    }
}

Additional documentation

More information about the NuGet.Packaging library can be found on the official Microsoft documentation page and NuGet API docs.

Showing the top 20 packages that depend on NuGet.Packaging.

Packages Downloads
NuGet.Protocol.Core.v3
NuGet Protocol for 3.1.0 servers
198
Microsoft.DotNet.Cli.Utils
Package Description
183
NuGet.Protocol.Core.Types
NuGet's protocol-level base types used for connecting to API v2 and API v3 repositories.
170
Microsoft.DotNet.Scaffolding.Shared
Contains interfaces for Project Model and messaging for scaffolding.
168
NuGet.Protocol
NuGet's implementation for interacting with feeds. Contains functionality for all feed types.
168
NuGet.Protocol
NuGet client library.
167
NuGet.Protocol.Core.v3
NuGet Protocol for 3.1.0 servers
166
NuGet.Packaging.Core
The (former home to) core data structures for NuGet.Packaging. Contains only the type forwarders to the new assembly.
166
NuGet.Packaging.Core
The (former home to) core data structures for NuGet.Packaging. Contains only the type forwarders to the new assembly.
164
Microsoft.DotNet.Cli.Utils
Microsoft.DotNet.Cli.Utils
164
NuGet.Packaging.Core
The (former home to) core data structures for NuGet.Packaging.
164
Microsoft.DotNet.ProjectModel
Types to model a .NET Project
164
NuGet.Protocol
NuGet client library.
163
Microsoft.DotNet.Cli.Utils
Package Description
160
NuGet.Protocol.Core.v3
NuGet Protocol for 3.1.0 servers
160
Microsoft.DotNet.Scaffolding.Shared
Contains interfaces for Project Model and messaging for scaffolding.
159
NuGet.Protocol
NuGet client library.
159
NuGet.Protocol.Core.v3
NuGet Protocol for 3.1.0 servers
159

.NET 10.0

.NET Framework 4.7.2

Version Downloads Last updated
8.0.0 3 11/11/2026
7.9.0 29 8/13/2026
7.6.0 45 5/13/2026
7.3.1 30 5/3/2026
7.3.0 43 2/18/2026
7.0.3 37 5/3/2026
7.0.1 59 11/25/2025
7.0.0 77 11/12/2025
6.14.3 46 5/3/2026
6.14.0 102 5/15/2025
6.13.2 117 2/28/2025
6.13.1 136 2/14/2025
6.12.5 36 5/3/2026
6.12.4 127 5/9/2025
6.12.1 138 11/17/2024
6.12.0 116 11/19/2024
6.11.2 38 5/3/2026
6.11.1 122 10/6/2024
6.11.0 133 8/15/2024
6.11.0-preview.2 127 6/5/2024
6.10.2 142 8/15/2024
6.10.1 136 6/28/2024
6.10.0 128 6/5/2024
6.9.1 138 2/23/2024
6.8.2 36 5/3/2026
6.8.1 136 2/21/2024
6.8.0 134 11/18/2023
6.7.1 127 2/23/2024
6.7.0 157 8/18/2023
6.6.2 119 2/23/2024
6.6.1 169 7/30/2023
6.6.0 131 5/20/2023
6.6.0-preview.3 133 5/20/2023
6.5.1 122 7/21/2023
6.5.0 131 2/24/2023
6.4.3 121 2/21/2024
6.4.2 157 8/4/2023
6.4.0 155 12/6/2022
6.3.4 140 2/23/2024
6.3.3 139 8/4/2023
6.3.1 134 11/14/2022
6.3.0 147 9/17/2022
6.2.4 149 8/4/2023
6.2.2 132 11/16/2022
6.2.1 138 6/30/2022
6.2.0 154 6/30/2022
6.1.0 148 6/30/2022
6.0.6 139 2/23/2024
6.0.5 138 8/4/2023
6.0.3-rc.1 131 11/25/2022
6.0.2 170 6/30/2022
6.0.0 144 6/30/2022
6.0.0-preview.4.243 141 6/30/2022
6.0.0-preview.3 136 6/30/2022
5.11.7 36 5/3/2026
5.11.6 136 2/23/2024
5.11.5 144 8/1/2023
5.11.3 156 10/13/2022
5.11.2 149 6/30/2022
5.11.0 148 6/30/2022
5.10.0 159 6/30/2022
5.10.0-preview.2.7185 121 6/30/2022
5.9.3 159 11/25/2022
5.9.2 163 6/30/2022
5.9.1 156 6/30/2022
5.9.0 150 6/30/2022
5.9.0-preview.2 140 6/30/2022
5.8.1 149 6/30/2022
5.8.0 155 6/30/2022
5.8.0-preview.3.6823 117 6/30/2022
5.8.0-preview.2.6776 127 6/30/2022
5.8.0-preview.1 175 6/30/2022
5.7.3-rtm.5 145 12/7/2022
5.7.2 158 6/30/2022
5.7.1 129 6/30/2022
5.7.0 135 6/30/2022
5.7.0-rtm.6702 149 6/30/2022
5.7.0-preview.3.6653 144 6/30/2022
5.7.0-preview.2.6618 128 6/30/2022
5.7.0-preview.1.6592 132 6/30/2022
5.6.0 138 6/30/2022
5.6.0-preview.3.6558 143 6/30/2022
5.6.0-preview.2.6489 141 6/30/2022
5.6.0-preview.1.6483 139 6/30/2022
5.5.1 133 6/30/2022
5.5.0 152 6/30/2022
5.5.0-preview.2.6382 143 6/30/2022
5.5.0-preview.1.6319 150 6/30/2022
5.4.0 128 6/30/2022
5.3.1 153 6/30/2022
5.3.0 144 6/30/2022
5.3.0-rtm.6192 139 6/30/2022
5.2.1 144 6/30/2022
5.2.0 156 6/30/2022
5.1.0 165 6/30/2022
5.1.0-preview2.5965 129 6/30/2022
5.0.2 175 6/30/2022
5.0.0 154 6/30/2022
5.0.0-rtm.5867 127 6/30/2022
5.0.0-rtm.5856 138 6/30/2022
5.0.0-preview3.5800 135 6/30/2022
5.0.0-preview2.5782 132 6/30/2022
4.9.7 46 5/3/2026
4.9.6 178 10/13/2022
4.9.5 135 6/30/2022
4.9.4 161 6/30/2022
4.9.3 173 6/30/2022
4.9.2 143 6/30/2022
4.9.2-rtm.5706 138 6/30/2022
4.9.1 136 6/30/2022
4.9.0-rtm.5658 133 6/30/2022
4.8.2 140 6/30/2022
4.8.0 172 6/30/2022
4.8.0-rtm.5362 131 6/30/2022
4.8.0-preview3.5278 146 6/30/2022
4.8.0-preview1.5156 133 6/30/2022
4.7.3 160 6/30/2022
4.7.2 136 6/30/2022
4.7.0 163 6/30/2022
4.7.0-rtm.5148 124 6/30/2022
4.7.0-rtm.5104 135 6/30/2022
4.7.0-preview4.5065 122 6/30/2022
4.7.0-preview1-4986 147 6/30/2022
4.6.4 155 6/30/2022
4.6.3 130 6/30/2022
4.6.2 132 6/30/2022
4.6.1 180 6/30/2022
4.6.0 160 6/30/2022
4.6.0-rtm-4918 127 6/30/2022
4.6.0-rtm-4825 141 6/30/2022
4.6.0-rtm-4791 148 6/30/2022
4.5.3 182 6/30/2022
4.5.2 134 6/30/2022
4.5.0 191 6/30/2022
4.5.0-rtm-4651 122 6/30/2022
4.4.3 141 6/30/2022
4.4.2 141 6/30/2022
4.4.0 139 6/30/2022
4.4.0-preview3-4475 171 6/30/2022
4.3.1 182 6/30/2022
4.3.0 204 6/30/2022
4.3.0-rtm-4324 136 6/30/2022
4.3.0-preview4 138 6/30/2022
4.3.0-preview3-4168 124 6/30/2022
4.3.0-beta1-2418 160 6/30/2022
4.2.0 146 6/30/2022
4.1.0 138 6/30/2022
4.0.0 139 6/30/2022
4.0.0-rtm-2283 130 6/30/2022
4.0.0-rtm-2265 131 6/30/2022
4.0.0-rc3 145 6/30/2022
4.0.0-rc2 158 6/30/2022
4.0.0-rc-2048 135 6/30/2022
3.5.0 148 6/30/2022
3.5.0-rc1-final 121 6/30/2022
3.5.0-beta2-1484 140 6/30/2022
3.5.0-beta-final 148 6/30/2022
3.4.4-rtm-final 136 6/30/2022
3.4.4-rc 149 6/30/2022
3.4.3 141 6/29/2022
3.3.0 150 6/29/2022
3.2.0 145 6/29/2022
1.0.0-pre-20150220044603 149 6/29/2022
1.0.0-pre-20150128082032 124 6/29/2022
1.0.0-pre-20150128071326 126 6/29/2022
1.0.0-pre-20150127085617 143 6/29/2022
1.0.0-pre-20150127072405 118 6/29/2022
1.0.0-pre-20150120213149 145 6/29/2022
1.0.0-pre-20150120004808 124 6/29/2022
1.0.0-pre-20150115030027 160 6/29/2022
1.0.0-pre-20150109221036 160 6/29/2022
1.0.0-pre-20150108074227 136 6/29/2022
1.0.0-pre-20150108073125 141 6/29/2022
1.0.0-pre-20150108010629 127 6/29/2022
1.0.0-master-50072333 136 6/29/2022
1.0.0-master-50060114 133 6/29/2022
1.0.0-master-50050213 134 6/29/2022
1.0.0-master-43652058 138 6/29/2022
1.0.0-master-43642026 143 6/29/2022
1.0.0-master-43522145 123 6/29/2022
1.0.0-master-43500148 129 6/29/2022
1.0.0-master-43450313 137 6/29/2022
1.0.0-master-43440912 128 6/29/2022
1.0.0-master-43422320 130 6/29/2022
1.0.0-master-43421050 156 6/29/2022
1.0.0-master-43421019 125 6/29/2022
1.0.0-master-43402220 141 6/29/2022
1.0.0-master-43362332 132 6/29/2022
1.0.0-master-43362323 132 6/29/2022
1.0.0-master-43250244 144 6/29/2022
1.0.0-master-43250241 144 6/29/2022
1.0.0-master-43250237 134 6/29/2022
1.0.0-master-43250218 151 6/29/2022
1.0.0-juste-43290204 155 6/29/2022