Если ваш вопрос относится только к DbContext
, тогда легко использовать следующие операторы
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<OracleDbContext>(builder => builder.UseSqlServer(connectionString));
services.AddDbContext<AppsDbContext>(builder => builder.UseSqlServer(connectionString));
}
Если ваш вопрос относится к общим интерфейсам, то это возможно, только если это общий интерфейс.Допустим, у вас есть интерфейс, подобный приведенному ниже:
public interface IRepository<T>
{
}
и несколько реализаций, таких как:
public class GenericRepository<User> : IRepository<User>
{
}
public class GenericRepository<Order> : IRepository<Order>
{
}
Для регистрации нескольких реализаций вам нужна только одна строка.
public void ConfigureServices(IServiceCollection services)
{
// you can register them with any life time like that e.g. Singleton, Transient
services.AddScoped(typeof(IRepository<>), typeof(GenericRepository<>));
}
Надеюсь, это поможет