Asp.net-Core-Mvc

更新 ContextModelSnapshot EF Core

  • May 4, 2018

我是 EF Core 的新手,所以如果有一個瑣碎的答案,請原諒我。

拿這個場景….

正在使用最新版本的 ASP.NET Core 開發一個新的 Web 應用程序,並採用程式碼優先的方法。在某些時候,由於刪除或原始碼控制,ContextModelSnapshot 與數據庫不同步。我們無法刪除數據庫並重新創建它。

**問題:**快照如何與數據庫“重新同步”?

你可以執行命令

Add-migration temporary

創建一個新的空遷移。然後,執行

Remove-Migration temporary(或他們的 dotnet-cli 同行)

在最新版本的 EF Core (3+) 中,只需使用:

Remove-Migration(將恢復上次遷移)

即使遷移已經被刪除,它也會從頭開始創建模型快照。這種方法非常適用於 Ef core 2.2.0-rtm-35687

引用自:https://stackoverflow.com/questions/50181233