2017-09-07 43 views
0

我修改了模型中的一個屬性,事實證明它不受SQLite版本的支持。這是錯誤。 {"SQLite does not support this migration operation ('DropColumnOperation'). For more information, see http://go.microsoft.com/fwlink/?LinkId=723262."}如何使用包管理器控制檯使用實體框架在通用Windows平臺中降級/回滾遷移?

因此,我決定使用命令Update-Database Migration "MyFirstMigration"將其回滾,但在控制檯上顯示錯誤,其中指出Update-Database shouldn't be used with Universal Windows Platform apps. Instead, call DbContext.Database.Migrate() at runtime.。推薦的這個代碼已經是在第一次運行應用程序時執行的代碼,它會產生上面的第一個錯誤。

我真的很想進入這裏。有人可以建議我如何回滾/降級MySecondMigration ti MyFirstMigration

回答

0

有人可以建議我如何回滾/降級MySecondMigration ti MyFirstMigration?

對於同一DbContext,包管理器控制檯上只需要執行Remove-Migration命令,它會刪除該DbContext最後遷移。這是你的MySecondMigration這將被刪除,只有MyFirstMigration離開。

更新數據庫不應該與通用Windows平臺應用程序一起使用。相反,調用DbContext.Database.Migrate()在運行時

對於這一點,只是如圖所示此錯誤,DbContext.Database.Migrate()適用於上下文數據庫的任何未決的遷移,包括哪些Update-Database做(數據庫更新到指定的移民)。通過我的測試,對於相同的DbContext,每次新遷移都是基於舊遷移的更新。 DbContext.Database.Migrate()將應用所有遷移進行更新。如果您不想要最新更新,只需將其刪除即可回滾。

相關問題