2017-12-03 192 views
0

我已創建了asp.net mvc的核心2.數據庫的初始化2

此應用程序與數據庫和實體框架的核心一個非常基本的Web應用程序。我曾與Migration和Code First戰略合作過。

一切工作正常。

我也可以用命令創建數據庫:

$ dotnet ef database update 

什麼,我想在這個時候要做的是在數據庫中創建一些數據(從C#代碼)。

我看了一些教程和我創建了包含代碼,將創建我的數據DataInitializer類。

我已經把這個線在Startup.cs配置方法的末尾:

DataInitializer dataseed = new DataInitializer(); 
    dataseed.InitializeDataAsync(app.ApplicationServices); 

的問題是數據插在每個我跑我的應用程序的時間。

我不想用C#代碼,如果數據是即使在數據庫,因爲它是非常危險的檢查。

我想要做什麼是觸發數據初始化與遷移。可能嗎 ?

感謝

回答

0

這是我使用的運行種子數據到它的工作原理新鮮表格式只能運行每桌1次假設在該表中沒有數據。

//run migrations 
_context.Database.Migrate(); 

if(!_context.SomeTable.Any()){ 
    //foreach 
    //insert 
    _context.SaveChanges(); 
}