Вы можете использовать ToTable
в вашем dbContext для установки имени схемы, если вы не укажете это, ядро EF будет использовать dbo
по соглашению.
public class MyDbContext
{
private string schemaName = "MyPrefix";
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<MyEntity>().ToTable("MyTable", schemaName );
}
}
Если вы хотите установить schemaNameв файле конфигурации (appsettings.json):
{
"schemaName": "MyPrefix",
}
Вы можете получить конфигурацию в файле dbContext, используя DI.
public class MyDbContext
{
private readonly IConfiguration _configuration;
public MyDbContext(DbContextOptions<ApplicationDbContext> options, IConfiguration configuration)
: base(options)
{
_configuration = configuration;
}
...// DbSet<>
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<MyEntity>().ToTable("MyTable", _configuration["schemaName"]);
}
}