实体框架核心 - 更改"__EFMigrationsHistory"表的模式

Sko*_*šek 10 entity-framework-core

是否可以__EFMigrationsHistory在EntityFramework Core中更改表的架构?

bri*_*lam 22

在你的电话中这样做UseSqlServer.

optionsBuilder
    .UseSqlServer(
        "...",
        x => x.MigrationsHistoryTable(
            HistoryRepository.DefaultTableName,
            "mySchema"));
Run Code Online (Sandbox Code Playgroud)


tmg*_*tmg 8

查看源代码(HistoryRepository.cs).您可以在里面配置自定义迁移表和模式名称DbContext constructor

public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options)
{
    var relationalOptions = RelationalOptionsExtension.Extract(options);
    relationalOptions.MigrationsHistoryTableName = "bar";
    relationalOptions.MigrationsHistoryTableSchema = "foo";
}
Run Code Online (Sandbox Code Playgroud)

或者里面 OnConfiguring method

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
    var relationalOptions = RelationalOptionsExtension.Extract(optionsBuilder.Options);
    relationalOptions.MigrationsHistoryTableName = "bar";
    relationalOptions.MigrationsHistoryTableSchema = "foo";
}
Run Code Online (Sandbox Code Playgroud)

  • 好像MS将其更改为:WithMigrationsHistoryTableName(“ bar”)和WithMigrationsHistoryTableSchema(“ foo”),以防以后有人搜索。 (3认同)