我已經檢查了其他問題,並在谷歌搜索,但我發現了很多解決方案...什麼是DropCreateDatabaseIfModelChanges(MVC3)的最佳選擇?
什麼是最好的?
我需要改變表數據模型發生變化時,我需要一個自動解決方案(如DropCreateDatabaseIfModelChanges呢..
非常感謝所有答覆
我已經檢查了其他問題,並在谷歌搜索,但我發現了很多解決方案...什麼是DropCreateDatabaseIfModelChanges(MVC3)的最佳選擇?
什麼是最好的?
我需要改變表數據模型發生變化時,我需要一個自動解決方案(如DropCreateDatabaseIfModelChanges呢..
非常感謝所有答覆
您可以參加CodeFirst Migrations。 CodeFirst Migrations。您需要EF 5二進制文件。
在軟件包管理控制檯
Add-Migration
運行Enable-Migrations –EnableAutomaticMigrations
命令將腳手架基於您對您的模型所做的更改在下一次遷移。 Update-Database
將對數據庫應用任何掛起的更改。
更新實體框架EDMX和同步它與你的數據庫的變化,你雙擊VS2010解決方案資源管理器中的EDMX。這帶來了設計師(模型瀏覽器窗口顯然是它所謂的)與實體的類佈局。右鍵單擊設計器表面上的任何地方,會在對話框中看到一個選項,「從數據庫中更新模型」。點擊此按鈕,您將進入更新嚮導,您可以在其中選擇數據庫對象想要添加的cts(如果新建),但默認情況下刷新現有的對象。
嚮導似乎沒有做的一件事是從現有對象中刪除列。可能是某種安全機制,但是如果你從數據庫中刪除了列,你是否真的想把它留在你的實體中?啊,誰知道。
它一直不能很好地工作。在我的情況下,我嘗試用模型編輯器手動創建任何東西,所以每次修改我的數據庫模型時,我打開EDMX編輯器,選擇所有實體,然後刪除它們,然後右鍵單擊模型並選擇選項:從數據庫。 當對象列表出現時,我選擇所有表格和下一個。它更新模型。