OnConfiguring for DbContext - 代码未运行 - ASP.NET 5

时间:2016-02-26 06:11:36

标签: asp.net entity-framework dnx

我有这段代码:

public class TestDbContext : DbContext
{
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        if (!optionsBuilder.IsConfigured)
        {
            optionsBuilder.UseSqlServer(@"Server=(local);Database=MyDb;Trusted_Connection=True;");
        }
    }
}

根据描述,这将在TestDbContext的新实例上触发。我有创建新上下文的代码:

TestDbContext ctx = new TestDbContext();

我期待OnConfiguring将被触发,所以我可以设置我的连接字符串,但代码不通过这里(我有断点)。我还需要其他任何东西吗?

1 个答案:

答案 0 :(得分:0)

我的DI导致OnConfiguring(..)也没有解雇。

对我来说,我能够添加一个ctor来解决问题

protected MyDbContext(DbContextOptions options) : base(options)
{

}

或者如果你更喜欢......

 protected MyDbContext() : base(new DbContextOptions<MyDbContext>())
 {

 }