使用DTO在对象关系映射器和数据访问层之间传输数据

时间:2009-01-22 18:57:12

标签: wcf orm soa data-access-layer

使用DTO在对象关系层和数据访问层之间传输数据是否有意义?这种模式什么时候会有用?什么时候会出现反模式

1 个答案:

答案 0 :(得分:1)

当您想要将业务代码与数据库隔离时,它非常有用。简单来说,通过从数据库中进行选择来创建DTO,并且数据访问层将对DTO的更改转换回数据库。在某些情况下,您甚至可以实现数据库供应商独立性(至少在代码的业务方面)。

常见的缺点是,如果您有非常具体的SQL来处理复杂的连接,联合等,或者为了最大限度地提高性能。在这些情况下,让DAL允许某种“旁路”方法是很有用的,在这种方法中,您可以发送动态sql或存储过程并获取数据。