NServiceBus
NServiceBus copied to clipboard
Improve unobtrusive message contracts
Issue transferred from internal repo
Unobtrusive mode is a good approach to resolve a variety of issues that arise from requiring an NServiceBus dependency on shared message contracts when using the default marker interfaces (IEvent etc).
However, unobtrusive mode is not that comfortable to use and requires user-defined conventions to be repeated on every single endpoint.
There are a few ways unobtrusive mode could be improved:
- Introducing default conventions
- Defining conventions in message contracts itself via conventions
- Removing the need to define conventions completely
These improvements could significantly improve the experience when defining shared message contracts. They would especially simplify upgrade/migration scenarios or scenarios that run multiple major versions of NServiceBus over extended periods of time. No dependency on NServiceBus for message contracts also gives users more options on target frameworks for their contract assemblies (e.g. allowing .NET Standard).