1
A
回答
1
實際上沒有正確的 - 但有責任,可能是混亂的一些重疊。
有點簡化 - 最初的EF,代碼首先沒有考慮增量代碼/型號變化。
遷移是爲了解決這個問題而引入的 - 基本上可以幫助您實現典型的開發生命週期,您的代碼和模型將通過不同的版本(以及分期,生產考慮)發展。
遷移將__MigrationHistory
表添加到您的Db中 - 遷移是您的數據庫,代碼模型和該表(保存並跟蹤歷史記錄)之間的「樹形方式」同步過程。
但是,它並沒有改變代碼的性質 - 所有的變化都會自動檢測到併爲您編寫腳本(這是整個點) - 也自動應用(從代碼中,w/o PS)如果您使用MigrateDatabaseToLatestVersion
Db初始值設定項。
所有你需要做的是什麼是正常預期的你作爲一個開發商 - 到那種把「檢查點」在你的代碼模型 - 和創建遷移 - 當你真正覺得時間是正確的那。 你可以通過PS控制檯來做到這一點。
然後,您可以在開發機器或任何其他已部署的應用程序上通過控制檯應用該遷移 - 或者從代碼自動執行該遷移。
這裏是我的一篇文章,我爲遷移做了一種hands on
演練 - 可能出現的問題,以及所有我能想到的地方。
1
我將嘗試「非混淆」你:)
有兩個獨立的部分組成:的EntityFramework和遷移。
在Entity Framework中創建模型併爲您生成數據庫。但是,如果您對模型進行了更改,則需要手動更新數據庫,否則EntityFramework將向您拋出錯誤。這就是Code First Migration的功能。它可以手動或自動地爲您管理數據庫升級。
遷移是可選的,但是可以避免直接的SQL交互。
相關問題
- 1. EntityFramework5代碼優先遷移
- 2. 代碼優先遷移MissingManifestResourceException
- 3. EF代碼優先遷移不編譯
- 4. EF 5 - 代碼優先遷移
- 5. 的EntityFramework代碼優先遷移
- 6. 如何啓用代碼優先遷移
- 7. EF代碼優先4.3:遷移/種子
- 8. LocalDb的代碼優先遷移和DataDirectory
- 9. 不使用代碼優先遷移
- 10. 代碼優先遷移未執行
- 11. EF5代碼優先 - 遷移列類型
- 12. EF 6代碼優先遷移跳過
- 13. DDD和EF代碼優先遷移
- 14. WebSecurity.InitializeDatabaseConnection不配合代碼優先遷移
- 15. 從EF自動遷移到代碼優先遷移
- 16. 代碼優先遷移 - 如何回滾首次遷移
- 17. EF6代碼優先遷移:遷移事件
- 18. 調試代碼優先實體框架遷移代碼
- 19. 基於代碼的代碼優先遷移
- 20. 代碼首先遷移
- 21. 添加遷移在代碼遷移/代碼中首先創建空遷移
- 22. 在代碼優先遷移中使用遷移歷史有什麼用處
- 23. EF代碼優先數據庫遷移 - 如何排除列的遷移?
- 24. 被jQuery困惑
- 25. 轉換MATLAB代碼 - 困惑
- 26. 從LINQ到SQL到實體框架的遷移「代碼優先」
- 27. 重置EF代碼優先遷移狀態
- 28. 在執行代碼優先遷移過程中上傳圖片
- 29. 使用代碼優先遷移和實體框架
- 30. 實體框架代碼優先自動模式遷移