Add support for NServiceBus message serialization via ProtoBuf
Already a Patron? skip past this section
It is expected that all developers either become a Patron to use NServiceBusExtensions. Go to licensing FAQ
Support this project by becoming a Sponsor. The company avatar will show up here with a website link. The avatar will also be added to all GitHub repositories under the NServiceBusExtensions organization.
Thanks to all the backing developers. Support this project by becoming a patron.
https://nuget.org/packages/NServiceBus.ProtoBuf/
configuration.UseSerialization<ProtoBufSerializer>();
This serializer does not support messages defined as interfaces. If an explicit interface is sent, an exception will be thrown with the following message:
Interface based message are not supported.
Create a class that implements the desired interface
Instead, use a public class with the same contract as the interface. The class can optionally implement any required interfaces.
Customizes the SerializerOptions
used for serialization.
var model = RuntimeTypeModel.Create();
model.IncludeDateTimeKind = true;
var serialization = configuration.UseSerialization<ProtoBufSerializer>();
serialization.RuntimeTypeModel(model);
When using additional deserializers or transitioning between different versions of the same serializer it can be helpful to take explicit control over the content type a serializer passes to NServiceBus (to be used for the ContentType header).
var serialization = configuration.UseSerialization<ProtoBufSerializer>();
serialization.ContentTypeKey("custom-key");
Robot designed by Sotirios Papavasilopoulos from The Noun Project.