I have read several threads about the two modes of CommandHandler that provides Axon; directly from AggregateRoot and to have a dedicated CommandHandler.
I have a question about, I have some commands that do not change the state of the Write Model, and not even need to validate the Domain Model, they serve only to Read Model.
Using the same AggregateRoot as commandHandler the AggregateRoot is automatically re-hydrated from the events stored, instead using a separate CommandHandler I could avoid rehydration and launch its event directly from CommandHanlder improving performance.
What do you think, I’m off the road, I’m forgetting or underestimating some principle?
Finally, if this practice is not forbidden how do I raise an event from commandHandler ?, I have to import the commandBus in the CommandHandler?