NServiceBus Message Versioning

NServiceBus Message Versioning
by Brad Jolicoeur
10/02/2018

As a software engineers we all know the requirements will change over time. At some point you will need to become comfortable with versioning your NServiceBus messages to adapt to those changing requirements. When you start thinking about the nuances of deploying endpoints that need to handle messages of different versions in flight or in an error queue waiting for retries it can be overwhelming at first. Luckily, there is a straight forward and relatively painless way to make changes to your contracts that will enable your endpoints to process old and new versions in parallel.

In this short video I walk through a versioning scenario where I implement a new version of an event using inheritance.

You can find the source code for this project on GitHub: NSB.Example.MessageVersioning


About Brad Jolicoeur

Principal Architect with 20+ years building and transforming engineering organizations. Wharton Executive CTO Program graduate. Writing about architecture, distributed systems, production AI, and engineering leadership.

Get in touch →   More articles →

You May Also Like


Why Your ETL Can't Just Read My Database

contracts-to-warehouse.png
Brad Jolicoeur - 04/29/2026
Read

Do You Still Need Wolverine When AI Can Write the Code?

wolverine-with-ai.png
Brad Jolicoeur - 04/12/2026
Read

Scaling Out Wolverine: What I Learned Coming from Rebus and NServiceBus

scale-wolverine.png
Brad Jolicoeur - 04/12/2026
Read