What is the "best" approach to query / save from server: DTO or Wcf Data Services?
From my point of view, data services and their query approach are useful when querying simple graphs of objects from your domain server model. But when you want to query complex dependencies, I couldn't create anything good.
The classic DTO approach is fine-grained and can handle everything, but the downside is that you have to create Dto classes for each type of server request, which is time consuming and you have to keep the D type in sync with your domain object / business logic.
a source to share
Depends on your definition of "better" - whether that means faster time to market or easier to maintain in the long run.
A hand-crafting DTO will mean that the initial development effort is likely to be longer than using a tool like WCF Data Services. However, by exposing only the DTOs, your application will be more decoupled from the internal domain model than WCF Data Services, so future fixes are likely to be simpler and shorter.
I would be prone to DTOs if you have enough time and budget during initial development, as money will be saved if the application runs long enough and it is easier to fix / modify. Additionally, using tools like Automapper can ease many of the pain points associated with mapping between domain objects and DTOs.
a source to share