2013-12-11 63 views
0

我有一個用戶界面,商業智能和數據層A N層應用程序。返回列表(中(EntityObject)?

的BI層執行許多操作,比如返回一個列表(中DBLayer.SomeObject)

但是UI層不引用BI層,憑什麼我就返回到該UI可以處理的格式UI層?

我是不是要重新將對象定義到BI層中?

回答

0

通常將實體對象放入組件由表示層,業務層和數據訪問層共享。

構建圖層和實體的方式取決於應用程序的大小和複雜程度。考慮到域驅動設計(DDD)的有效方法是將應用程序和域邏輯分離爲單獨的層。這些實體實際上建立了一個領域模型,不僅包含數據結構,還包含領域邏輯,因此成爲領域層的一部分。

很明顯,應用程序層使用了領域模型,實體也可以被用戶界面使用。如果數據訪問層也知道域模型並直接處理實體,這是最簡單的。或者,DAL僅提供映射到域對象和從域對象映射的DTO。