EntityFramework Core 刪除遷移


參考資料:
https://www.yoyomooc.com/yoyomooc/52.keeping-domain-models-and-database

EF Core刪除遷移的命令是Remove-Migration。一次只刪除一個遷移,並且僅刪除尚未應用到數據庫的最新遷移。如果強行刪除已經應用到數據庫的遷移,會拋出異常。

刪除尚未應用到數據庫的最新遷移

直接運行Remove-Migration命令即可。

刪除已經應用到數據庫的遷移

假設我們已經按順序應用了Migration1、Migration2和Migration3,想要刪除Migration2和Migration3。

首先要撤銷遷移對數據庫造成的更改。即我們需要回滾Migration2和Migration3的更改,再執行遷移Migraiton1,將數據庫的狀態和當前需要回滾的模型狀態搞成一致。實現方法很簡單,想要回滾Migration2和Migration3,我們直接執行Update-Database Migration1即可。因為2和3是在1之后應用的,所以執行該指令可以直接撤銷2和3的更改。EF Core還會從__EFMigrationsHistory表中刪除2和3的遷移記錄。

然后需要刪除2和3的Migration代碼文件。不應手動刪除,應當使用命令Remove-Migration 文件名,即:

Remove-Migration Migration3
Remove-Migration Migration2


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM