В двух словах - ДА. Базовая МОДЕЛЬ - это просто представление класса ваших таблиц базы данных, так что хитрость здесь заключается в том, чтобы установить соединение, используя другой драйвер базы данных, представленный Entity Framework.
EG:
Реализуйте шаблон репозитория внутри класса и назовите его MySqlContext, где этот класс наследуется от DbContext, и у него будет метод OnConfiguring:
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
using (var secretsClient = new InsightSecrets())
{
var connectionInfo = // here you add your own depending on environment and project
string connectionString = connectionInfo.ConnectionString;
optionsBuilder.UseMySql(connectionString);
}
}
Экземпляр optionsBuilder может затем создать в этом случае выше, либо ссылку MySql, либо Postgress, тогда как этот репозиторий будет создан выше в вашем коде, выполнив нечто подобное в конструкторе класса, где будет использоваться этот контекст:
var ctx = new MySqlContext();
Хранилище с именем MySqlContext может в этом примере уже предоставлять MySql или Postgres, но ничто не мешает вам реализовать другой репозиторий, который предоставляет другой контекст базы данных в зависимости от связанных драйверов БД.