我正在開發使用SQL Server數據庫的Windows應用程序。我有這個應用程序的不同版本,他們有不同的數據庫結構,所以我需要在應用程序啓動時將數據庫遷移到最新版本。我想比較數據庫結構和應用程序模型,然後進行修改,創建或刪除命令。使用數據代碼優先和現有數據庫
另外我想使用EF代碼優先ORM,經過一番搜索後,我發現有一些有用的命令和代碼優先配置。但問題是,據我所知,所有這些都丟棄了現有的數據庫並創建一個新的數據庫,這樣在我需要數據時數據就會丟失。
我在我的應用程序啓動功能,使用這些行:
var migrator = new DbMigrator(new Configuration());
migrator.Update();
但執行這條線後,我會得到這個異常:
There is already an object named 'SomeTable' in the database.
我知道,這是正確的,並有該表但結構改變了!我怎樣才能比較結構,並做其餘的?