【发布时间】:2015-02-05 22:32:32
【问题描述】:
我是 Code first Entity 框架的新手,在第一次运行我的应用程序后登录到数据库时,当我看到“__MigrationHistory”表时有点困惑。
我现在了解此表的必要性,但不喜欢它在用户表中的标准 dbo 模式中,我认为它的突兀和风险。
我的第一个想法是将其移至系统文件夹。在研究如何在 EF 上下文中实现这一点时,我能找到的只是如何将其从系统移动到 dbo。
我现在感觉 __MigrationHistory 应该默认在系统文件夹中创建...是这样吗?
如何配置我的上下文以默认管理/引用系统文件夹中的迁移历史表?
这是我的上下文,是我做错了什么还是缺少某些配置?
public class MyContext : DbContext, IDataContext
{
public IDbSet<Entity> Entities { get; set; }
public MyContext()
: base("ConnectionString")
{
}
public new IDbSet<TEntity> Set<TEntity>() where TEntity : class
{
return base.Set<TEntity>();
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
}
【问题讨论】:
-
它实际上在默认情况下位于 System 文件夹中,但在 EF 6 中更改了此行为。
标签: c# sql-server entity-framework ef-code-first