实体框架6在数据库中生成表格 - 但我不想要它们

时间:2014-04-18 05:49:42

标签: asp.net-mvc entity-framework

我使用ASP.NET MVC 5,Entity Framework 6.我使用数据库优先方法。我创建了数据库,然后创建了ASP.NET MVC应用程序,但Entity Framework将表添加到我的数据库中,例如:_MigrationhistoryPeople(我在数据库中有自己的表Person)。

这是我在申请中的背景:

public class DatabaseContext : DbContext
{
        public DatabaseContext() : base("DatabaseContext") { }

        public DbSet<Person> Persons { get; set; }
}

发生了什么事?

1 个答案:

答案 0 :(得分:3)

EF默认情况下会创建表,除非您明确告诉它不要。关于它的更多信息here

您可以使用以下代码禁用初始化程序:

Database.SetInitializer<DatabaseContext>(null);

样本使用:

public class DatabaseContext : DbContext
{
    // This static constructor disables the initializer.
    static DatabaseContext()
    {
        Database.SetInitializer<DatabaseContext>(null);
    }

    public DatabaseContext() : base("DatabaseContext") { }

    public DbSet<Person> Persons { get; set; }
}