我有以下代码在.Net core 2.0控制台程序中设置DBContext,并将其注入主应用程序类的构造函数。
yview
现在我创建了一个xUnit测试类,需要初始化相同的DbContext进行测试。
textbox.yview("scroll", -100, "units"
它得到参数 IConfigurationRoot configuration = GetConfiguration();
services.AddSingleton(configuration);
Conn = configuration.GetConnectionString("ConnStr1");
services.AddDbContext<MyDbContext>(o => o.UseSqlServer(Conn));
的错误不能为空。如何正确设置测试项目中的DbContext?
答案 0 :(得分:4)
我找到了办法。
var dbOption = new DbContextOptionsBuilder<MyDbContext>()
.UseSqlServer("....")
.Options;
答案 1 :(得分:4)
George Alexandria的解决方案对我有用:
var optionsBuilder = new DbContextOptionsBuilder<MyDbContext>();
optionsBuilder.UseInMemoryDatabase();
var context = new MyDbContext(optionsBuilder.Options);
答案 2 :(得分:2)
EF 2.0要求所有内存数据库都已命名,因此请务必这样命名:
var optionsBuilder = new DbContextOptionsBuilder<MyDbContext>();
optionsBuilder.UseInMemoryDatabase("MyInMemoryDatabseName");
var context = new MyDbContext(optionsBuilder.Options);