如何在asp.net mvc 3.0使用Nuget更新數據庫?
廣告:
asp.net mvc3.0我們就需要更新數據庫,方法是:
1.安裝VS的Nuget。打開Nuget控制臺,輸入Enable-Migrations啟用數據庫遷移。如果已經啟用,控制臺會提示“Migrations have already been enabled in project '***'. To overwrite the existing migrations configuration, use the -Force parameter.”
2.標記遷移點,輸入Add-Migration ***,星號為遷移點名稱,可自定義。
3.輸入Update-Database完成更新。
此時再執行程序,則不會再出現報錯,數據庫也更新完畢了。如果想回退到某一次的遷移點,只需要在Nuget控制臺中輸入 Update-Database –TargetMigration:"***" 星號為遷移點名稱。另外可以通過Script參數生成腳本,例如Update-Database -Script -SourceMigration:"**" -TargetMigration:"**" 這樣就會生成一個sql腳本而不是直接更新數據庫。
當然,如果覺得操作控制臺的指令太多不方便,可以使用自動遷移功能。方法如下:
1.打開 Migrations文件夾下的Configuration.cs,修改代碼為
public Configuration()
{
AutomaticMigrationsEnabled = true;
}
2.如果需要更新數據庫,只需要在Nuget控制臺輸入Update-Database -Verbose即可,如果提示“Automatic migration was not applied because it would result in data loss”(不能自動遷移,會導致數據丟失) ,則在Update-Database 后面加 -Force參數即可。注意,這樣并不會引起數據丟失。
PM> Update-Database -Force
Specify the '-Verbose' flag to view the SQL statements being applied to the target database.
No migrations configuration type was found in the assembly 'TopWin.Etone.Web'. (In Visual Studio you can use the Enable-Migrations command from Package Manager Console to add a migrations configuration).
廣告: