Facade Query Services DTO DTO ORM DB Command Facade Command Services Command Model Query Facade Query Services Query Facade Query Services SELECT … FROM … WHERE ... Queries are just dealing with data, not with behaviour.
What’s the value of having objects then? Introduce thin read layer that makes optimized use of the database’s query capabilities No ORM, no fuss – just plain SQL (SQL happens to be really good at queries, you know...) The default architecture for enterprise apps CQRSified