实体中的EF唯一属性 - 一个上下文,首先是多个数据库代码

时间:2017-02-14 16:12:54

标签: c# entity-framework ef-code-first entity-framework-6

我有一个特定的场景:

  • 一个DbContext MyContext
  • twoDatabases Db1和Db2
  • 具有属性a,b和c的实体MyEntity

上下文:

public class MyContext : DbContext
{
    public MyContext(string connString) : base(connString)
    {

    }

    public virtual DbSet<MyEntity> MyDbSet { get; set; }

我在db1中应用迁移,它创建表MyEntity,列a,b,c。

现在使用相同的上下文,我想在db2中使用MyEntity,但只能使用列a,b。我所做的是:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    if(IsDb2)
    {
        modelBuilder.Entity<MyEntity>().Ignore(x => x.PropertyC);
    }
}

但是在添加迁移时会导致错误:属性PropertyC不是MyEntity类型的声明属性。

我试图通过EF实现哪些目标?我使用EF 6。

非常感谢您提前澄清这一点!

0 个答案:

没有答案