[英]Database.EnsureCreated not working
我正在使用下面列出的Entity Framework 7版本
"EntityFramework.Core": "7.0.0-rc1-final",
"EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
"EntityFramework.Commands": "7.0.0-rc1-final"
我的DatabaseContext類非常簡單
public class WorldContext : DbContext
{
public DbSet<Trip> Trip { get; set; }
public DbSet<Stop> Stop { get; set; }
public WorldContext()
{
Database.EnsureCreated();
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
var connectionString = Startup.Configuration["Data:WorldContextConnection"];
optionsBuilder.UseSqlServer(connectionString);
base.OnConfiguring(optionsBuilder);
}
}
在構造函數中單擊Database.EnsureCreated
方法時遇到問題。 據我所知,這種方法應該確保數據庫創建(如果數據庫不存在),否則應該什么也不做。 當我通過DatabaseContext類代碼進行調試時,我遇到了在Database.EnsureCreated
方法上設置的斷點,當執行繼續時,斷點再次被擊中(這是不希望的),因此出於某種原因,兩次將DatabaseContext構造函數輸入兩次。 在第二次命中時,引發以下異常
即使數據庫存在, EnsureCreated
方法也不應該忽略它嗎? 我在這里想念什么嗎?
不要調用確保在您的構造函數中創建的方法,而是在應用啟動過程中調用一次
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.