Nerdbank.MessagePack
0.11.6-rc
Prefix Reserved
See the version list below for details.
dotnet add package Nerdbank.MessagePack --version 0.11.6-rc
NuGet\Install-Package Nerdbank.MessagePack -Version 0.11.6-rc
<PackageReference Include="Nerdbank.MessagePack" Version="0.11.6-rc" />
<PackageVersion Include="Nerdbank.MessagePack" Version="0.11.6-rc" />
<PackageReference Include="Nerdbank.MessagePack" />
paket add Nerdbank.MessagePack --version 0.11.6-rc
#r "nuget: Nerdbank.MessagePack, 0.11.6-rc"
#:package Nerdbank.MessagePack@0.11.6-rc
#addin nuget:?package=Nerdbank.MessagePack&version=0.11.6-rc&prerelease
#tool nuget:?package=Nerdbank.MessagePack&version=0.11.6-rc&prerelease
Nerdbank.MessagePack
A modern, fast and NativeAOT-compatible MessagePack serialization library
This is a fast and more user-friendly MessagePack serialization library for .NET and .NET Framework. This package is brought to you by one of the two major contributors to MessagePack-CSharp. As its natural successor, this library comes packed with features that its predecessor lacks, and has ongoing support.
Features
- Serializes in the compact and fast MessagePack format.
- Performance is on par with the highly tuned and popular MessagePack-CSharp library.
- Automatically serialize any type annotated with the PolyType
[GenerateShape]attribute or non-annotated types by adding a 'witness' type with a similar annotation. - Fast
ref-based serialization and deserialization minimizes copying of large structs. - NativeAOT and trimming compatible.
- Serialize only properties that have non-default values (optionally).
- Keep memory pressure low by using async serialization directly to/from I/O like a network, IPC pipe or file.
- Streaming deserialization for large or over-time sequences.
- Primitive msgpack reader and writer APIs for low-level scenarios.
- Author custom converters for advanced scenarios.
- Security mitigations for stack overflows.
- Optionally serialize your custom types as arrays of values instead of maps of names and value for more compact representation and even higher performance.
- Support for serializing instances of certain types derived from the declared type and deserializing them back to their original runtime types using unions.
- Optionally preserve reference equality across serialization/deserialization.
- Structural (i.e. deep, by-value) equality checking for arbitrary types, both with and without collision resistant hash functions.
See how these features and more compare with the leading MessagePack library.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.7.2
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.NET.StringTools (>= 17.14.28)
- Microsoft.VisualStudio.Validation (>= 17.13.22)
- PolyType (>= 1.0.0-rc.7)
- System.Collections.Immutable (>= 8.0.0)
- System.IO.Pipelines (>= 8.0.0)
- System.Text.Json (>= 8.0.6)
-
.NETStandard 2.0
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.NET.StringTools (>= 17.14.28)
- Microsoft.VisualStudio.Validation (>= 17.13.22)
- PolyType (>= 1.0.0-rc.7)
- System.Collections.Immutable (>= 8.0.0)
- System.IO.Pipelines (>= 8.0.0)
- System.Text.Json (>= 8.0.6)
-
net8.0
- Microsoft.NET.StringTools (>= 17.14.28)
- Microsoft.VisualStudio.Validation (>= 17.13.22)
- PolyType (>= 1.0.0-rc.7)
- System.IO.Pipelines (>= 8.0.0)
-
net9.0
- Microsoft.NET.StringTools (>= 17.14.28)
- Microsoft.VisualStudio.Validation (>= 17.13.22)
- PolyType (>= 1.0.0-rc.7)
- System.IO.Pipelines (>= 8.0.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Nerdbank.MessagePack:
| Package | Downloads |
|---|---|
|
Nerdbank.MessagePack.SignalR
SignalR Hub Protocol implementation using Nerdbank.MessagePack for fast and efficient binary serialization. |
|
|
Nerdbank.MessagePack.AspNetCoreMvcFormatter
ASP.NET Core MVC Input/Output MessagePack formatter using Nerdbank.MessagePack for fast and efficient binary serialization. |
|
|
ServiceModel.Grpc.Nerdbank.MessagePackMarshaller
Library that enables applications to communicate with gRPC services using code-first approach, helps to get around some limitations of gRPC protocol. Provides exception handling. Helps to migrate existing WCF solution to gRPC with minimum effort. |
GitHub repositories (2)
Showing the top 2 popular GitHub repositories that depend on Nerdbank.MessagePack:
| Repository | Stars |
|---|---|
|
microsoft/vs-streamjsonrpc
The StreamJsonRpc library offers JSON-RPC 2.0 over any .NET Stream, WebSocket, or Pipe. With bonus support for request cancellation, client proxy generation, and more.
|
|
|
max-ieremenko/ServiceModel.Grpc
Code-first for gRPC
|
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.2 | 15 | 12/8/2025 |