關於使用EntityFramework的DomainModel的持久性。我想驗證下面的方法在該領域的專家:首先使用實體框架模型的域驅動設計
槓桿
OnModelCreating
映射或忽略一些並不需要的導航性能 。不幸的是,所有這些都是針對 Code-First的。VS
款待機型第POCO的DTO &使用反腐敗層
我們在數據庫中使用的模型首先,設計的巨大的投資在 爲了利用DDD離開了只有一條路徑我們 - 離開POCO 僅由設計師生成的類別&域類別分開。當需要 進行手動映射或使用AutoMapper時。我對麼?
第二什麼是最好的地方有這個映射,反腐敗層?
編輯: 我們> 250個表中的架構,通過持續代碼第一感覺好像失去了理解能力是設計師供應商,也是第一建模我一旦生成.SQL完整的權威。然而,在代碼中,首先我必須忍受代碼優先的遷移,爲我生成/更新表。
儘管您可以使用Automapper將POCO和域類分隔開來,但我通常不使用POCO。我有我的領域乾淨,沒有任何引用EF,因此沒有OnModelCreating和DataAnnotations在我的域名。 EF內Infra /數據層,引用我的域,並使用我的域類生成數據庫。在我的應用程序層,我有更簡單的模型暴露給應用程序,代表與Automapper映射的域類。請閱讀此[發佈](http://stackoverflow.com/questions/909264/ddd-anti-corruption-layer-how-to),我發現它很有趣。 – Alisson
有「支持狀態對象」的方法,雖然我不是很喜歡它,並且不會推薦它用於綠地應用程序:https://vaughnvernon.co/?p = 879 – guillaume31