2017-03-02 18 views
0

我首先使用遷移的EF代碼。我需要更新舊數據庫 但是我已經丟失了一些遷移代碼。 有沒有辦法產生缺失的遷移?生成缺少的遷移,以便我可以更新舊的數據庫結構

+0

在尋找使用實體數據模型嚮導創建舊數據庫的代碼第一個模型。 –

+0

您是否從包管理器命令行嘗試了update-database -script。 https://msdn.microsoft.com/en-us/library/jj591621(v=vs.113).aspx – smiggleworth

+0

沒有意義,如果我沒有正確的遷移運行。 –

回答

0

步驟1:備份(顯然)

步驟2:刪除__MigrationHistory

第3步:創建一個臨時項目。 使用實體數據模型嚮導創建代碼優先模型。

步驟4:在包管理器控制檯中啓用新項目中的遷移(使用啓用遷移)。
創建初始遷移(使用添加遷移之一)。註釋創建的遷移的Up和Down方法。
運行更新數據庫。

第5步:將原始項目的Migrations文件夾中的所有文件替換爲臨時項目中的文件。根據需要編輯DbContext和命名空間名稱。

步驟6在包管理器運行原來的項目加入遷移2 然後運行更新的數據庫

+0

我不得不對「兩個」遷移進行大量更改。將來我會更加小心,不要放棄舊的遷移。 –

相關問題