从服务器查询/保存:DTO或Wcf数据服务的“更好”方法是什么?
问题描述:
从我的角度来看,从服务器端域模型查询简单对象图时,Data Services及其查询方法很有用。但是当你想查询复杂的依赖关系时,我无法从中创建任何好的东西。从服务器查询/保存:DTO或Wcf数据服务的“更好”方法是什么?
经典的DTO方法是细粒度的,可以处理所有事情,但缺点是您必须为每种类型的服务器请求创建Dto类,这非常耗时且您必须将Dto类型与您的域同步实体/业务逻辑。
答
取决于您对“更好”的定义 - 无论这意味着更快上市还是更易于长期维护应用程序。
手工编写DTO的将意味着最初的开发工作将可能长于使用工具如WCF数据服务。然而,只露出DTO的申请将被更多的从比WCF数据服务内部域模型分离,所以以后的维护修复可能会更容易和更短。
我会倾向DTO的,如果你有最初的发展资金中有足够的时间和预算将被保存,如果应用程序生命足够长的时间,它会更容易修复/修改。同样使用诸如Automapper之类的工具可以缓解许多与域对象和DTO之间的映射相关的痛点。
这是更好的方式是在引号:),对我来说这将是DRY原则,可维护性,代码安全 – Bonefisher 2010-04-21 11:48:43