业务对象是否应该知道它的相应合同对象

时间:2010-11-09 18:05:07

标签: wcf business-objects datacontract architecture

我有一些业务对象和一些非常相似的相应数据契约对象,用于通过WCF服务获取数据。

我应该使用什么机制从业务对象中获取填充的数据协定对象?

在理想的世界中,数据合同层是否应该了解业务层?

业务层应该知道数据合同层吗?

是否应该有另一个具有静态方法的映射层,如GetDataContractFromBusinessObject?

2 个答案:

答案 0 :(得分:2)

我是你提到的“使用静态方法的映射层”技术的忠实粉丝。然后,您的业务对象和数据协定不会相互依赖。

答案 1 :(得分:0)

我经常会添加一个派生类来处理业务层中特定后备存储的数据消耗。

另一种选择是业务类理解的接口数据层表示。然后让您的数据层实现该接口。我更喜欢这种方法,因为让业务层与数据层的抽象版本交互,然后让数据层理解业务对象就更简单了。