【发布时间】:2013-02-21 17:29:34
【问题描述】:
目前我正在开发一个利用多层架构的项目,如Application Architecture Guide 2.0 中所述,有 5 层(DAL、BLL、外观、表示层和公共层)。
这里我们有一个业务逻辑层,它由业务组件和业务实体(它们是使用 O/R 映射器生成的实体)组成,我们经常需要在表示层中使用这些实体来绑定和向用户呈现数据,所以我们将这些实体冒泡通过其他层直到表示层。
现在的问题是:
这是一个正确的方法吗? (根据我的定义,如果我们应该共享这些,我们应该将它们放在公共层中,以便我们可以在所有层中使用它们)。
我们不应该将这些实体移动到公共层吗?或者我们应该定义数据传输对象(DTO)之类的东西并通过层传递它们(这当然看起来是多余的)。
任何澄清将不胜感激。
【问题讨论】:
-
这是一个关于域实体及其放置位置可能有趣的系列:ludwigstuyck.wordpress.com/2013/03/05/…
标签: architecture entities business-logic-layer architectural-patterns