我需要在部署時更新測試服務器數據庫,但我沒有找到辦法做到這一點。 我們沒有使用自動遷移,因此我們手動執行。實體框架在測試服務器上執行遷移
我可以直接在測試服務器上執行它嗎?也許一個控制檯程序?
我使用的NuGet呼籲地方發展:更新,數據庫 我知道我們可以生成腳本文件,我必須做手工?
我需要在部署時更新測試服務器數據庫,但我沒有找到辦法做到這一點。 我們沒有使用自動遷移,因此我們手動執行。實體框架在測試服務器上執行遷移
我可以直接在測試服務器上執行它嗎?也許一個控制檯程序?
我使用的NuGet呼籲地方發展:更新,數據庫 我知道我們可以生成腳本文件,我必須做手工?
如果您使用Visual Studio,則可以使用發佈功能來執行腳本。在這裏尋找更多詳情:
http://learn.iis.net/page.aspx/1081/building-a-web-deploy-package-from-visual-studio-2010/
如果您使用的團隊基金會的服務器,你甚至可以自動執行它:
也來生成腳本,也許你可以使用migrate.exe(它帶有ef 4.3我認爲當獲得nuget包時)並在後期構建中運行它...
您可以使用MigrateDatabaseToLatestVersion數據庫初始值設定程序來執行您的m通過代碼或配置來實現。在代碼中你會做以下的應用程序啓動時:
Database.SetInitializer<MyContext>(
new MigrateDatabaseToLatestVersion<MyContext, MyMigrationConfig>()
);
或者在應用程序的config文件:
<entityFramework>
<contexts>
<context type="MyContext">
<databaseInitializer
type="System.Data.Entity.MigrateDatabaseToLatestVersion`2[
[MyContext], [MyMigrationConfig]
], EntityFramework" />
</context>
</contexts>
</entityFramework>
文檔[這裏](https://msdn.microsoft.com/en -gb/data/jj556606.aspx) - 「數據庫初始化程序」部分。 –