7

我有幾個數據庫目前使用FluentMigrator,並且很想知道實體框架遷移如何進行比較。FluentMigrator不能做什麼實體框架遷移?

EF Migrations可以遷移種子數據並根據像FluentMigrator這樣的環境選擇性地運行遷移腳本,可以使用標籤和配置文件嗎?

我已經將EF數據庫優先作爲ORM應用到我的應用程序中,我想我現在讀了EF Migrations支持非代碼優先EF的地方,但我的團隊一直在考慮重構代碼無論如何,因爲數據庫優先方法的一些限制,第一種方法。那麼EF Migrations在使用代碼優先的方法時是否更合理地使用,而不是擁有另一個第三方遷移框架?

+0

嗯,主要是FM無法自動生成遷移。也就是說,它不掃描數據庫,確定發生了什麼變化,並根據差異創建腳本。 EFM做到了。 –

+0

現在三年過去了,我很好奇你是否嘗試了轉換,以及你的經歷是什麼。似乎大多數使用遷移的人使用一種或另一種,並且對其他人沒有真正的意見。 –

回答

1

我對FluentMigrator沒有任何經驗,但在簡要介紹一下文檔後,看起來您必須手動創建您的遷移?

每次模型更改和應用程序運行時,EF都會提示進行遷移。這使得它很容易,但在同一時間惱人。一旦啓用遷移,對模型進行的涉及數據庫更改的任何更改都需要遷移。您可以修改遷移週期,並且它是自動生成的。只是看「下」版本......我有問題。

代碼首先是非常無縫的壽。甚至可以處理更復雜的對象模型,如子類。您甚至可以指定如何生成表(每種類型的表,基表和每種類型的表,或單個表和類型鍵)。如果你總是要生成c#代碼來更新你的數據庫,我會用EF的內置遷移。他們爲你做大部分工作。