Is it possible to control the execution order of custom message handlers?
As an example, I might want a logging handler to execute first, so I always log a request.
Apart from adding the logging handler last, I'm failing to see how to achieve this.
config.MessageHandlers.Add(new CustomHandlerOne());
config.MessageHandlers.Add(new CustomHandlerTwo());
config.MessageHandlers.Add(new LoggingHandler());
The order in which you register the handlers determines when they are called but as Aliostad points out they work in a Russian doll model so the first one in is also called as the last one out and so forth.
The registered handlesr are invoked in a bottom-up fashion in the incoming path and top-down in the outgoing. That is, the last entry is called first for an incoming request message but invoked last for an outgoing response message.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With