ABP中名詞解釋及區別
阿新 • • 發佈:2020-08-02
上一篇中出現了很多的名詞,比如值物件,DTO,聚合根等等,現在我就一一解釋並對他們進行區別
首先理解一點,ABP是基於DDD領域驅動模型建立的,自然裡面也引進了一些其中的概念,上面的這些基本都是DDD裡的名詞
聚合根:業務物件,比如書店專案中的Book,或者訂單系統的訂單Order
值物件:表示值的一組物件,固定不變但是自身有一定邏輯,沒有ID,比如
public class Address{ public string Province{get;set;} public string City{get;set;} public string County{get;set;} }
Address可用作表示地址的值,但是顯然省市區有聯絡,不可以隨意賦值,也不能隨意修改
值物件中的屬性,欄位也是值物件
DTO:資料傳輸物件,只表示值,負責傳遞數值,沒有邏輯,沒有ID,只負責在展示層和應用層之間傳輸資料,繫結資料
實體:有生命週期,有狀態,比如訂單下面的訂單物品OrderItem,可以改變,有ID區分