In this chapter we learned how to take advantage of the full power of the NServiceBus host. First we explored the interfaces that we can implement to make our own customizations to the NServiceBus host, and learned how we can use dependency injection to inject our own customizations into the framework. We learned how to use additional bus settings, including controlling the message serializer and transaction settings.
Next we learned how to create message assemblies without a dependency on NServiceBus itself, which will grant us the ultimate freedom to perform updates to different components in our system independently.
After that, we learned some details about the messaging pipeline, including how we can take advantage of polymorphic dispatch to version our messages, how we can control the order of message handlers in the pipeline, and actions we can take on the messages when they are in the pipeline. We learned how to manage the unit of work so that we can manage resources at the...