我正在使用 EntityFramework Core 和 .net core 2.0 进行项目开发,在执行 cron 作业时需要连接多个数据库来获取数据。我在 startup.cs
中注入了 DbContext.cs
,代码如下:
services.AddDbContext<DbContext.cs>();
我在我的 UnitOfWork.cs
中这样使用它:
public class UnitOfWork<Context> : IUnitOfWork where Context : DbContext
{
public DbContext _context { get; set; }
public DbContext getContext()
{
return _context;
}
public UnitOfWork(DbContext context)
{
_context = context;
}
}
这也是由依赖注入管理的。
我的问题是,是否有可能使用一个注入的dbcontext实例,并在需要时在运行时更改连接?我真的没有找到清晰的解决方案。我尝试使用setter和每次需要连接到新数据库时实例化一个新的dbContext,但这似乎并不美观:
public void SetContext(DbContext context)
{
_context = context;
}
public DbContext _context { get; set; }
DbContext
连接到不同的数据库是不可能的吗? - Boubakr Echieb