更改默认架构名称后,代码优先迁移中断

时间:2015-09-06 06:55:17

标签: c# asp.net-mvc entity-framework

所以我有这个背景。

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
    public ApplicationDbContext()
        : base("DefaultConnection", throwIfV1Schema: false)
    {
    }

    public static ApplicationDbContext Create()
    {
        return new ApplicationDbContext();
    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);
        modelBuilder.HasDefaultSchema("Name");
    }

    public virtual DbSet<EntityA> TableA { get; set; }
    public virtual DbSet<EntityB> TableB{ get; set; }
}

结果如下:

  

名称.__ MigrationHistory

     

Name.TableA

     

Name.TableB

这一切都很好。

然而我跑

Enable-Migrations
Update-Database

它给了我

  

无效的对象名称'dbo .__ MigrationHistory。

我如何告诉它使用带有模式“名称”的新表?

Name.__MigrationHistory代替dbo.__MigrationHistory

1 个答案:

答案 0 :(得分:2)

Enable-Migrations尝试运行Add-Migration Initial后。