What are the pros & cons of using Entity Framework 4.1 Code-first over Model/Database-first with EDMX diagram? 使用實體框架4.1代碼優先於模型/數據庫優先使用EDMX圖表有什麼優缺點? 數據庫
I'm trying to fully understand all the approaches to building data access layer using EF 4.1. 我正在嘗試徹底理解使用EF 4.1構建數據訪問層的全部方法。 I'm using Repository pattern and IoC
. 我正在使用Repository模式和IoC
。 app
I know I can use code-first approach: define my entities and context by hand and use ModelBuilder
to fine-tune the schema. 我知道我能夠使用代碼優先方法:手動定義個人實體和上下文,並使用ModelBuilder
來微調模式。 框架
I can also create an EDMX
diagram and choose a code generation step that uses T4 templates to generate the same POCO
classes. 我還能夠建立EDMX
圖並選擇使用T4模板生成相同POCO
類的代碼生成步驟。 ui
In both cases I end up with POCO
object which are ORM
agnostic and context that derives from DbContext
. 在這兩種狀況下,我最終都獲得了與ORM
無關的POCO
對象和源自DbContext
上下文。 spa
Database-first seems to be most appealing since I can design database in Enterprise Manager, quickly synch the model and fine-tune it using the designer. 數據庫優先彷佛最吸引人,由於我能夠在企業管理器中設計數據庫,快速同步模型並使用設計器對其進行微調。 .net
So what is the difference between those two approaches? 那麼這兩種方法有什麼區別? Is it just about the preference VS2010 vs Enterprise Manager? 是僅僅關於VS2010與企業管理器的偏好? 設計