由於資料庫中存在對象,EF Core 的更新資料庫失敗
在使用Entity Framework Core 的ASP.Net Core 中,嘗試更新資料庫可能會失敗並出現錯誤,指示資料庫中已存在同名的物件。如果在使用命令列更新資料庫後手動更新資料庫,則會出現此錯誤。
通常建議的解決方案是使用“Add-migration 'Reset' -IgnoreChanges”命令,如John 所概述薩勒夫斯基.但是,由於EF Core 中缺少-IgnoreChanges 參數,此方法可能會失敗。
解決方案:
要解決此問題,請按照以下步驟操作:
註解掉()方法:
應用遷移:
運行以下命令:
Add-Migration Initialization Update-Database
此程序將建立目前資料庫狀態。未來的遷移將僅包含在此基線之後所做的變更。
新增變更回:
透過註解掉Up() 方法,EF Core 保留目前資料庫架構並避免與現有物件發生衝突。一旦應用基線遷移,後續遷移就可以安全地引入新的更改,確保無縫更新過程。
以上是為什麼 EF Core 的「更新資料庫」會因為現有資料庫物件而失敗,如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!