3
在的WebAPI(.NET核2.0 + EF核心)項目Startup.cs實例化的DbContext在IntegrationTests
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContextPool<MyContext>(options =>
options.UseSqlServer(_config["ConnectionStrings:MyConnectionString"]));
services.AddMvc();
}
的語境:
public class MyContext : DbContext
{
public MyContext(DbContextOptions<MyContext> options)
: base(options)
{ }
public MyContext()
{
}
public DbSet<Employee> Employees { get; set; }
}
沒有問題,當我打電話的WebAPI。
但在我的集成測試,我想這樣做:
[Fact]
void TestMethod()
{
var context = new MyContext();
var service = new MyService(context);
var result = service.GetAll();//Error here
Assert.True(result.Count() > 0);
}
我得到這個錯誤:
沒有數據庫提供商已經配置了這個的DbContext。一個 提供商可以通過重寫DbContext.OnConfiguring 方法或應用服務提供商使用AddDbContext配置
我怎樣才能實例化的背景下,並指定ConnectionString,以使用?